Alexandre Julliard : winecfg: Fix deletion of registry keys for Wow64 mode.
Alexandre Julliard
julliard at winehq.org
Fri Aug 26 10:40:54 CDT 2011
Module: wine
Branch: master
Commit: fdc0d0f95f8a86b73094db15aaca2f861aab50f8
URL: http://source.winehq.org/git/wine.git/?a=commit;h=fdc0d0f95f8a86b73094db15aaca2f861aab50f8
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Aug 26 14:28:11 2011 +0200
winecfg: Fix deletion of registry keys for Wow64 mode.
---
programs/winecfg/winecfg.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/programs/winecfg/winecfg.c b/programs/winecfg/winecfg.c
index 1d2ec50..8a2f534 100644
--- a/programs/winecfg/winecfg.c
+++ b/programs/winecfg/winecfg.c
@@ -645,7 +645,11 @@ static void process_setting(struct setting *s)
{
/* NULL name means remove that path/section entirely */
if (s->name) RegDeleteValueW( key, s->name );
- else RegDeleteTreeW( key, NULL );
+ else
+ {
+ RegDeleteTreeW( key, NULL );
+ RegDeleteKeyW( s->root, s->path );
+ }
RegCloseKey( key );
}
if (needs_wow64)
@@ -654,7 +658,11 @@ static void process_setting(struct setting *s)
if (!RegOpenKeyExW( s->root, s->path, 0, MAXIMUM_ALLOWED | KEY_WOW64_32KEY, &key ))
{
if (s->name) RegDeleteValueW( key, s->name );
- else RegDeleteTreeW( key, NULL );
+ else
+ {
+ RegDeleteTreeW( key, NULL );
+ RegDeleteKeyExW( s->root, s->path, KEY_WOW64_32KEY, 0 );
+ }
RegCloseKey( key );
}
}
More information about the wine-cvs
mailing list