[prev in list] [next in list] [prev in thread] [next in thread] 

List:       mono-devel-list
Subject:    [Mono-dev] Registry Bug still around?
From:       Cory Foy <usergroup () cornetdesign ! com>
Date:       2006-05-27 22:08:29
Message-ID: 4478CDDD.3060601 () cornetdesign ! com
[Download RAW message or body]

Hi All,

I've got the latest version of Mono, and it looks like the Registry bug 
is still around on Linux. I've created a test case which is attached to 
this email. Here's what I get while running it:

foyc@dilbert ~/workspace/monobugs $ mono -V
Mono JIT compiler version 1.1.15, (C) 2002-2005 Novell, Inc and 
Contributors. www.mono-project.com
         TLS:           normal
         GC:            Included Boehm (with typed GC)
         SIGSEGV:       normal
         Disabled:      none
foyc@dilbert ~/workspace/monobugs $ mono regtest.exe
Setting Values
Clearing Names

Unhandled Exception: System.InvalidCastException: Cannot cast from 
source type to destination type.
in <0x0008a> Microsoft.Win32.UnixRegistryApi:DeleteValue 
(Microsoft.Win32.RegistryKey rkey, System.String value, Boolean 
throw_if_missing)
in <0x00035> Microsoft.Win32.RegistryKey:DeleteValue (System.String 
value, Boolean shouldThrowWhenKeyMissing)
in <0x0000f> Microsoft.Win32.RegistryKey:DeleteValue (System.String value)
in (wrapper remoting-invoke-with-check) 
Microsoft.Win32.RegistryKey:DeleteValue (string)
in <0x00120> RegBug:Main (System.String[] args)


I know before this hadn't made it into the trunk, so I'm wondering if 
perhaps it still hasn't. Can anyone provide some insight into it? Thanks!

-- 
Cory Foy
http://www.cornetdesign.com

["regtest.cs" (text/x-csharp)]

using Microsoft.Win32;
using System;

public class RegBug
{
  public static void Main(String[] args) 
  {
    string subkey = @"Software\nunit.org\Nunit\2.4";
    using(RegistryKey key = Registry.LocalMachine.CreateSubKey(subkey))
    using(RegistryKey fooKey = key.CreateSubKey("foo"))
    {
    	Console.WriteLine("Setting Values");
	key.SetValue("X", 5);
	fooKey.SetValue("Y", 6);

	Console.WriteLine("Clearing Names");
	foreach(string name in key.GetValueNames())
	  key.DeleteValue(name);

	Console.WriteLine("Clearing Subkeys");
	foreach(string name in key.GetSubKeyNames())
	  key.DeleteSubKeyTree(name);
    }

    Console.WriteLine("All Clear");
    
  }
}


_______________________________________________
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic