init: Fix memory corruption when sanitizing platform paths

This commit fixes code that incorrectly increments s when it
hits the terminator character of the string being sanitized.
This means it will randomly start trashing memory beyond the
end of the string being sanitized until it happens to hit two
NULs (\0\0) which will break it out of the loop.

Change-Id: I76553d7f183236a78a0bc7b408e92559b98f732f
This commit is contained in:
Christopher R. Palmer 2014-09-22 14:35:54 -04:00
parent fbe58079b4
commit 07f3fee164

View file

@ -329,9 +329,9 @@ void sanitize(char *s)
if (!s)
return;
for (; *s; s++) {
while (*s) {
s += strspn(s, accept);
if (*s) *s = '_';
if (*s) *s++ = '_';
}
}