[Mono-bugs] [Bug 79051][Nor] New - UnixRegistryAPI attempts to write key values after key is removed

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Thu Aug 10 14:28:42 EDT 2006


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by gert.driesen at pandora.be.

http://bugzilla.ximian.com/show_bug.cgi?id=79051

--- shadow/79051	2006-08-10 14:28:42.000000000 -0400
+++ shadow/79051.tmp.20305	2006-08-10 14:28:42.000000000 -0400
@@ -0,0 +1,54 @@
+Bug#: 79051
+Product: Mono: Class Libraries
+Version: 1.1
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Normal
+Component: CORLIB
+AssignedTo: mono-bugs at ximian.com                            
+ReportedBy: gert.driesen at pandora.be               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: UnixRegistryAPI attempts to write key values after key is removed
+
+Apparently, Mono's registry implementation for unix attempts to write key 
+values to disk after a its parent key has been removed.
+
+To reproduce, compile and run the following code snippet:
+
+using System;
+using Microsoft.Win32;
+
+public class RegistryTest
+{
+  static void Main ()
+  {
+    using (RegistryKey softwareKey = Registry.LocalMachine.OpenSubKey 
+("software", true)) {
+      RegistryKey monoKey = softwareKey.CreateSubKey ("monotest1");
+      monoKey.SetValue ("test", "whatever");
+      monoKey.Close ();
+      softwareKey.DeleteSubKeyTree ("monotest1");
+    }
+  }
+}
+
+Expected result:
+
+Successful execution with no error output.
+
+Actual result:
+
+When 
+saving /home/monohead/.mono/registry/LocalMachine/software/monotest1/value
+s.xml got System.IO.DirectoryNotFoundException: Destination directory not 
+found: /home/monohead/.mono/registry/LocalMachine/software/monotest1
+  at System.IO.File.Create (System.String path, Int32 buffersize) 
+[0x00000] 
+  at System.IO.File.Create (System.String path) [0x00000] 
+  at Microsoft.Win32.KeyHandler.Save () [0x00000]


More information about the mono-bugs mailing list