[Wine-devel] [Wine-patches] [eter-2.0.0][eterhack] ole32: Fixed opening the registry key when the subkey name is NULL. (eterbug #8050)

Dmitry Timoshkov dtimoshkov на etersoft.ru
Ср Окт 31 13:47:17 MSK 2012


Tatyana Fokina <tatyana на etersoft.ru> wrote:

> @@ -936,7 +936,17 @@ static DWORD COM_RegReadPath(HKEY hkeyroot, const WCHAR *keyname, const WCHAR *v
>  	WCHAR src[MAX_PATH];
>  	DWORD dwLength = dstlen * sizeof(WCHAR);
>  
> -	if((ret = RegOpenKeyW(hkeyroot, keyname, &key)) == ERROR_SUCCESS) {
> +	/* This hack is needed to solve
> +	 * eterbug #8050
> +	 * Do not open the keyroot when the keyname is NULL */
> +	if (keyname && *keyname)
> +	   ret = RegOpenKeyExW(hkeyroot, keyname, 0, KEY_READ, &key);

Насколько я вижу, COM_RegReadPath() всегда вызывается со 2-м и 3-м параметрами
NULL. Если в этом суть проблемы, то во-первых, эти параметры просто нужно удалить,
во-вторых, проверить код, который вызывает этот хелпер, и в-третьих, отправить
патч (реальный, с подробным объяснеением сути проблемы) в winehq, не создавая
очередной ненужный приватный хак.

-- 
Dmitry.


Подробная информация о списке рассылки Wine-devel