Bläddra i källkod

Refactor key-val pair parsing

master
Arun Prakash Jana 4 år sedan
förälder
incheckning
b3076e35d6
Ingen känd nyckel hittad för denna signaturen i databasen GPG-nyckel ID: A75979F35C080412
1 ändrade filer med 6 tillägg och 5 borttagningar
  1. +6
    -5
      src/nnn.c

+ 6
- 5
src/nnn.c Visa fil

@@ -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;
}


||||||
x
 
000:0
Laddar…
Avbryt
Spara