From: Dmitry Stogov Date: Sun, 22 Apr 2007 10:25:18 +0000 (+0000) Subject: Fixed buffer overflow X-Git-Tag: php-5.2.2RC2~32 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6a8b3db8bc1e5edd4f0afdf9e01a828cdc979bff;p=php Fixed buffer overflow --- diff --git a/win32/registry.c b/win32/registry.c index 752bc38128..9c674c0819 100644 --- a/win32/registry.c +++ b/win32/registry.c @@ -133,10 +133,12 @@ static int LoadDirectory(HashTable *directories, HKEY key, char *path, int path_ if (path_len) { memcpy(new_path, path, path_len); new_path[path_len] = '/'; - path_len++; + memcpy(new_path+path_len+1, name, name_len+1); + zend_str_tolower(new_path, path_len+name_len+1); + } else { + memcpy(new_path, name, name_len+1); + zend_str_tolower(new_path, name_len); } - memcpy(new_path+path_len, name, name_len+1); - zend_str_tolower(new_path, path_len+name_len); if (LoadDirectory(directories, subkey, new_path, path_len+name_len, ht)) { ret = 1; }