Quellcode durchsuchen

Refactor key-val pair parsing

master
Arun Prakash Jana vor 5 Jahren
Ursprung
Commit
b3076e35d6
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden GPG-Schlüssel-ID: A75979F35C080412
1 geänderte Dateien mit 6 neuen und 5 gelöschten Zeilen
  1. +6
    -5
      src/nnn.c

+ 6
- 5
src/nnn.c Datei anzeigen

@@ -3010,7 +3010,7 @@ static int xlink(char *prefix, char *path, char *curfname, char *buf, int *prese

static bool parsekvpair(kv **arr, char **envcpy, const uchar id, uchar *items)
{
bool next = TRUE;
bool new = TRUE;
const uchar INCR = 8;
uint i = 0;
kv *kvarr = NULL;
@@ -3028,7 +3028,7 @@ static bool parsekvpair(kv **arr, char **envcpy, const uchar id, uchar *items)
ptr = *envcpy;

while (*ptr && i < 100) {
if (next) {
if (new) {
if (!(i & (INCR - 1))) {
kvarr = xrealloc(kvarr, sizeof(kv) * (i + INCR));
*arr = kvarr;
@@ -3043,13 +3043,14 @@ static bool parsekvpair(kv **arr, char **envcpy, const uchar id, uchar *items)
return FALSE;
kvarr[i].off = ptr - *envcpy;
++i;

new = FALSE;
}

if (*ptr == ';') {
*ptr = '\0';
next = TRUE;
} else if (next)
next = FALSE;
new = TRUE;
}

++ptr;
}


Laden…
Abbrechen
Speichern