Author: greatlrd Date: Sat May 27 17:00:39 2006 New Revision: 22073
URL: http://svn.reactos.ru/svn/reactos?rev=22073&view=rev Log: Bugfix environ so it does not allown = in environ name not even as frist char
Modified: trunk/reactos/lib/crt/misc/environ.c
Modified: trunk/reactos/lib/crt/misc/environ.c URL: http://svn.reactos.ru/svn/reactos/trunk/reactos/lib/crt/misc/environ.c?rev=2... ============================================================================== --- trunk/reactos/lib/crt/misc/environ.c (original) +++ trunk/reactos/lib/crt/misc/environ.c Sat May 27 17:00:39 2006 @@ -222,6 +222,7 @@
if (option == NULL || (epos = wcschr(option, L'=')) == NULL) return -1; + remove = (epos[1] == 0);
/* Duplicate environment if needed. */ @@ -244,6 +245,15 @@ memcpy(name, option, (epos - option) * sizeof(wchar_t)); name[epos - option] = 0;
+ if (*name == 0) || (wcschr(option, L'=') !=NULL) + { + /* fixme check see if name contain any space or so + so we really locate first char in name and compare + it with equal + */ + free(name); + return -1; + } /* Find the option we're trying to modify. */ for (index = 0, wenvptr = _wenviron; *wenvptr != NULL; wenvptr++, index++) {