Tom Spear schrieb:
Hopefully this will be the last try.
Instead of just checking HKLM for uninstall entries, check HKCU as well.
Converted all instances of entries[numentries-1].xxx to entry->xxx Fixed a bug with a trace. Ran the file thru kwrite to make SURE there are NO tabs! Double checked the diff to make sure no whitespaces were removed by adding new lines.
Any comments?
+static uninst_entry *entry;
You only need this variable in FetchUninstallInformation(). Just declare it there, no need to make it global.
if (!entries)
entries = HeapAlloc(GetProcessHeap(), 0, sizeof(uninst_entry));
You can move this out of the for() loop as you only need to do this once.
WINE_TRACE("allocated entry #%d: %s (%s), %s\n", numentries, wine_dbgstr_w(entry->key),
wine_dbgstr_w(entry->descr), wine_dbgstr_w(entry->command));
Better write this as: + WINE_TRACE("allocated entry #%d: %s (%s), %s\n", numentries, wine_dbgstr_w(entry->key), + wine_dbgstr_w(entry->descr), wine_dbgstr_w(entry->command)); It's just easier to see this way that the second line still belongs to the first.
/* If no uninstall information can be found, then display a dialog to let the user know.
* Windows doesn't do this, why do we? We should just catch the error and silently return..
*/
Just imo, but i would rather post this question to the mailing list or just propose a patch to change it. It doesn't really help to put this question in the code ;)