Module: wine Branch: master Commit: fdc0d0f95f8a86b73094db15aaca2f861aab50f8 URL: http://source.winehq.org/git/wine.git/?a=commit;h=fdc0d0f95f8a86b73094db15aa...
Author: Alexandre Julliard julliard@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 ); } }