summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>2002-03-14 15:40:24 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>2002-03-14 15:40:24 +0000
commit2cb3b07af39510c3fd8efaa408eec36782ff767d (patch)
tree8bdb72530259aafb8074c2e34858fb4242390144
parent7e1960aa82e13ec948bfdcee2f84317d91c164f1 (diff)
downloadATCD-2cb3b07af39510c3fd8efaa408eec36782ff767d.tar.gz
ChangeLogTag:Thu Mar 14 09:17:55 2002 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
-rw-r--r--ChangeLog4
-rw-r--r--ChangeLogs/ChangeLog-02a4
-rw-r--r--ChangeLogs/ChangeLog-03a4
-rw-r--r--THANKS1
-rw-r--r--ace/Configuration.cpp28
5 files changed, 41 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 73ffbc7cf9b..7b270636b33 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
Thu Mar 14 09:17:55 2002 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+ * ace/Configuration.cpp (remove_section): Made the code consistent
+ for all versions of Windows. Thanks to Jon Lambert
+ <jlsysinc@ix.netcom.com> for the fix.
+
* examples/Service_Configurator/IPC-tests/client/remote_service_directory_test.cpp (ACE_TMAIN): Added
'\n' to the end of command strings so that the client won't hang. Thanks to
Marc M Adkins <Marc.M.Adkins@doorways.org> for this fix.
diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a
index 73ffbc7cf9b..7b270636b33 100644
--- a/ChangeLogs/ChangeLog-02a
+++ b/ChangeLogs/ChangeLog-02a
@@ -1,5 +1,9 @@
Thu Mar 14 09:17:55 2002 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+ * ace/Configuration.cpp (remove_section): Made the code consistent
+ for all versions of Windows. Thanks to Jon Lambert
+ <jlsysinc@ix.netcom.com> for the fix.
+
* examples/Service_Configurator/IPC-tests/client/remote_service_directory_test.cpp (ACE_TMAIN): Added
'\n' to the end of command strings so that the client won't hang. Thanks to
Marc M Adkins <Marc.M.Adkins@doorways.org> for this fix.
diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a
index 73ffbc7cf9b..7b270636b33 100644
--- a/ChangeLogs/ChangeLog-03a
+++ b/ChangeLogs/ChangeLog-03a
@@ -1,5 +1,9 @@
Thu Mar 14 09:17:55 2002 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+ * ace/Configuration.cpp (remove_section): Made the code consistent
+ for all versions of Windows. Thanks to Jon Lambert
+ <jlsysinc@ix.netcom.com> for the fix.
+
* examples/Service_Configurator/IPC-tests/client/remote_service_directory_test.cpp (ACE_TMAIN): Added
'\n' to the end of command strings so that the client won't hang. Thanks to
Marc M Adkins <Marc.M.Adkins@doorways.org> for this fix.
diff --git a/THANKS b/THANKS
index 5945e9e241d..0d24af05bbd 100644
--- a/THANKS
+++ b/THANKS
@@ -1479,6 +1479,7 @@ Frank Kuhlman <kuhlmann@materna.de>
Sorin Iordachescu <sorin.iordachescu@am-beo.com>
Denis Otchenashko <oko@bank.gov.ua>
Marc M Adkins <Marc.M.Adkins@doorways.org>
+Jon Lambert <jlsysinc@ix.netcom.com>
I would particularly like to thank Paul Stephenson, who worked with me
at Ericsson in the early 1990's. Paul devised the recursive Makefile
diff --git a/ace/Configuration.cpp b/ace/Configuration.cpp
index 85d53eae0ef..87f46cee0ed 100644
--- a/ace/Configuration.cpp
+++ b/ace/Configuration.cpp
@@ -593,8 +593,36 @@ ACE_Configuration_Win32Registry::remove_section (const ACE_Configuration_Section
}
}
+#if (ACE_HAS_WINNT4 != 0)
if (ACE_TEXT_RegDeleteKey (base_key, sub_section) != ERROR_SUCCESS)
return -2;
+#else
+ if (!recursive)
+ {
+ ACE_Configuration_Section_Key section;
+ if (open_section (key, sub_section, 0, section))
+ return -2;
+
+ HKEY sub_key;
+ if (load_key (section, sub_key))
+ return -3;
+
+ ACE_TCHAR name_buffer[ACE_DEFAULT_BUFSIZE];
+ DWORD buffer_size = ACE_DEFAULT_BUFSIZE;
+ // Check for a an entry under the sub_key
+ if (ACE_TEXT_RegEnumKeyEx (sub_key,
+ 0,
+ name_buffer,
+ &buffer_size,
+ NULL,
+ NULL,
+ NULL,
+ NULL) == ERROR_SUCCESS)
+ return -2;
+ }
+ else if (ACE_TEXT_RegDeleteKey (base_key, sub_section) != ERROR_SUCCESS)
+ return -2;
+#endif
return 0;
}