Browse Source

Fix for config file section parsing.

Currently, if the target key has a section that matches
the initial substring of another section we mistakenly
believe we've found the correct section.  To avoid this
problem, ensure that the section lengths are identical
before comparison.

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
sean 19 years ago committed by Junio C Hamano
parent
commit
93ddef3e2d
  1. 5
      config.c

5
config.c

@ -335,8 +335,9 @@ static int store_aux(const char* key, const char* value) @@ -335,8 +335,9 @@ static int store_aux(const char* key, const char* value)
store.offset[store.seen] = ftell(config_file);
store.state = KEY_SEEN;
store.seen++;
} else if(!strncmp(key, store.key, store.baselen))
store.state = SECTION_SEEN;
} else if (strrchr(key, '.') - key == store.baselen &&
!strncmp(key, store.key, store.baselen))
store.state = SECTION_SEEN;
}
return 0;
}

Loading…
Cancel
Save