[INTRIN]
[reactos.git] / reactos / dll / win32 / mshtml / ros_diff.patch
1 --- C:/Users/CHRIST~1/AppData/Local/Temp/install.-rev47414.svn001.tmp.c Sa Mai 29 16:46:40 2010
2 +++ C:/Users/Christoph/Desktop/Projekte/ReactOS/dll/win32/mshtml/install.c Sa Mai 29 16:43:49 2010
3 @@ -60,6 +60,11 @@
4 '\\','W','i','n','e',
5 '\\','M','S','H','T','M','L',0};
6
7 +static const CHAR mshtml_keyA[] =
8 + {'S','o','f','t','w','a','r','e',
9 + '\\','W','i','n','e',
10 + '\\','M','S','H','T','M','L',0};
11 +
12 static HWND install_dialog = NULL;
13 static LPWSTR tmp_file_name = NULL;
14 static HANDLE tmp_file = INVALID_HANDLE_VALUE;
15 @@ -225,23 +230,18 @@
16 static BOOL install_from_registered_dir(void)
17 {
18 char *file_name;
19 - HKEY hkey;
20 DWORD res, type, size = MAX_PATH;
21 BOOL ret;
22
23 + file_name = heap_alloc(size+sizeof(GECKO_FILE_NAME));
24 /* @@ Wine registry key: HKCU\Software\Wine\MSHTML */
25 - res = RegOpenKeyW(HKEY_CURRENT_USER, mshtml_keyW, &hkey);
26 - if(res != ERROR_SUCCESS)
27 - return FALSE;
28 -
29 - file_name = heap_alloc(size+sizeof(GECKO_FILE_NAME));
30 - res = RegQueryValueExA(hkey, "GeckoCabDir", NULL, &type, (PBYTE)file_name, &size);
31 + res = RegGetValueA(HKEY_CURRENT_USER, mshtml_keyA, "GeckoCabDir", RRF_RT_ANY, &type, (PBYTE)file_name, &size);
32 if(res == ERROR_MORE_DATA) {
33 file_name = heap_realloc(file_name, size+sizeof(GECKO_FILE_NAME));
34 - res = RegQueryValueExA(hkey, "GeckoCabDir", NULL, &type, (PBYTE)file_name, &size);
35 + res = RegGetValueA(HKEY_CURRENT_USER, mshtml_keyA, "GeckoCabDir", RRF_RT_ANY, &type, (PBYTE)file_name, &size);
36 }
37 - RegCloseKey(hkey);
38 - if(res != ERROR_SUCCESS || type != REG_SZ) {
39 +
40 + if(res != ERROR_SUCCESS || (type != REG_SZ && type != REG_EXPAND_SZ)) {
41 heap_free(file_name);
42 return FALSE;
43 }