[Mono-bugs] [Bug 361352] New: Several bugs in ApplicationSettingsBase
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Tue Feb 12 21:40:53 EST 2008
https://bugzilla.novell.com/show_bug.cgi?id=361352
Summary: Several bugs in ApplicationSettingsBase
Product: Mono: Class Libraries
Version: SVN
Platform: Other
OS/Version: Other
Status: NEW
Severity: Normal
Priority: P5 - None
Component: Configuration
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: alan.mcgovern at gmail.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Created an attachment (id=194573)
--> (https://bugzilla.novell.com/attachment.cgi?id=194573)
A new test for Nunit and some changes
First a few comments on my patch:
+ if(owner.Site != null)
+ providerService =
(ISettingsProviderService)owner.Site.GetService(typeof(ISettingsProviderService));
In the app i'm porting owner.Site == null. Putting in this check stops a null
ref from being thrown. Everything appears to work ok with this check.
+ if (propertyValues == null)
+ propertyValues = new
SettingsPropertyValueCollection();
+
+ propertyValues.Add(new SettingsPropertyValue(setting));
This is the wrong place to put this. I have no doubt in my mind ;) However i'm
not sure how best to handle this. I've noticed that when testing the MS.NET
implementation, the property values are filled in and exist when the class
loads the settings. The current implementation doesn't do this. Adding these
lines allows my application to start up and load/save settings correctly.
Finally, if you run the testcase below, you'll error out with an
InvalidOperationException. In MS.NET, the virtual methods are not called when
instantiating the class and so everything sets up correctly. When you are
setting up the properties internally, you have to call base.Context etc. Or
access the private member directly.
Hope all that makes sense.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list