Re: [Mono-dev] test-Windows_Forms-2.0 failures on mono-trunk
On Wed, Mar 25, 2009 at 11:05 PM, Marc Christensen mchristen...@novell.com wrote: Hi Ivan, It looks like one or more of your changes to DataGridView* may have caused a breakage in the test-Windows_Forms-2.0 test suite on mono trunk. The breakage started occurring between -r129798:129815. Here's the error: Test Case Failures: 1) MonoTests.System.Windows.Forms.DataGridViewBindingTest.DataSetBindingTest.TestAutoGenerateColumns : A4 Expected: 4 But was: 3 at MonoTests.System.Windows.Forms.DataGridViewBindingTest.DataSetBindingTest.TestAutoGenerateColumns () [0x00137] in /tmp/monobuild/build/BUILD/mono-130215/mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/DataGridViewDataBindingTest.cs:252 at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception) at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x000ca] in /tmp/monobuild/build/BUILD/mono-130215/mcs/class/corlib/System.Reflection/MonoMethod.cs:169 It looks like you modified DataGridView* stuff in at least the following revisions: r129803, r129804, r129805, r129806, r129815. A full report of the changes in those revisions can be found here: http://monoport.com/40062 Thanks! -- Marc Christensen http://www.novell.com Hey, Thanks, fixed in r130267. -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] how do i get mouse position on the screen?
On Tue, Feb 24, 2009 at 6:46 PM, jkarpago jkarp...@gmail.com wrote: Hi: I want to know where is the mouse in the screen, not the app window but the whole screen. I have tried width cursor, mouse, pointer and did not find a solution. how can I do it? Hi, WinForms or GTK#? In WinForms try the static property Control.MousePosition and for GTK# the someWidgetInstance.RootWindow.GetPointer (...) method. -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Bug in DataGridView.ScrollBars
2009/2/20 Marcelo Marques Inacio marceloina...@hotmail.com: Dear friends developers. The property ScrollBars.Vertical or ScrollBars.Horizontal in the DataGridView control is not working properly. The horizontal and vertical bar is always visible. Attached the following changes to correct operation. I have fixed this in r127716, thanks. Please next time directly file bugs for the WinForms component next time - http://mono-project.com/Bugs . -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [Mono-list] Announcing Mono 2.2 RC1...
On Tue, Dec 23, 2008 at 12:47 AM, Thomas Wiest twi...@novell.com wrote: Hey Everyone, We've just released Mono 2.2 RC1 today! Please help us out by giving it a try with your applications. As always, you can get the preview/RC releases here: http://mono.ximian.com/monobuild/preview/download-preview/ Please report any bugs that you may find using our Bugs page, AND reply to this thread with the bug numbers so we can track them: http://www.mono-project.com/Bugs You can see the bugs we're tracking for Mono 2.2 here: https://bugzilla.novell.com/buglist.cgi?query_format=advancedclassification=Monotarget_milestone=2.2.xorder=bugs.bug_status The earlier you file the bugs and reply to this message, the more likely your bugs will get fixed. Special attention is given to regressions, so if you can tell us a version of Mono where the bug worked and you tag the summary of the bug with [Regression], then it is much more likely your bug will get fixed. Please help the Mono team to make 2.2 the best ever. Hi Thomas, Can you please add the fixed and backported bug https://bugzilla.novell.com/show_bug.cgi?id=381435 (Castle Project) to your tracking. Thanks. -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Object data source update fails on nullable field.
2008/12/16 Vladimir Krasnov vladim...@mainsoft.com Hi Marek, I've found some problems in updating row in GridView control that bound to ObjectDataSource. 1. ObjectDataSource fails to convert values to Nullable properties while creating data object. 2. BoundField should return null when no value entered by the user, it returns empty string and ObjectDataSource fails to convert it. Please review attached patch that fixes both these problems, also find attached test cases. Vladimir I don't know if the web databinding layer uses TypeConverters (the WinForms one does), but just in case I should note that I have implemented the NullableConverter two weeks ago in SVN HEAD. -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Object data source update fails on nullable field.
On Tue, Dec 16, 2008 at 8:40 PM, Marek Habersack mhabers...@novell.com wrote: On Tue, 2008-12-16 at 10:29 +, Ivan N. Zlatev wrote: 2008/12/16 Vladimir Krasnov vladim...@mainsoft.com Hi Marek, I've found some problems in updating row in GridView control that bound to ObjectDataSource. 1. ObjectDataSource fails to convert values to Nullable properties while creating data object. 2. BoundField should return null when no value entered by the user, it returns empty string and ObjectDataSource fails to convert it. Please review attached patch that fixes both these problems, also find attached test cases. Vladimir I don't know if the web databinding layer uses TypeConverters (the WinForms one does), but just in case I should note that I have implemented the NullableConverter two weeks ago in SVN HEAD. It does, when the type being converted is adorned with the TypeConverter attribute A type doesn't necessarily have to have a TypeConverterAttribute attached. There is a table of predefined converters in TypeDescriptor that it always falls back to. In addition TypeConverters can be fed via TypeDescriptionProvider-s added to the TypeDescriptor. -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] System.Drawing.Graphics.MeasureCharacterRanges broken with empty layout rectangle
2008/11/27 Stefanos A. [EMAIL PROTECTED]: When MeasureCharacterRanges is passed an empty layout rectangle (RectangleF.Empty), it should not perform any word wrapping. Attached is a test case that demonstrates the issue (runs fine under .Net). The best way to get this properly tracked is to file a bug in Bugzilla - http://mono-project.com/Bugs. -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] RichTextBox Scroll Position
On Mon, Oct 20, 2008 at 5:00 PM, Alisdair Little [EMAIL PROTECTED] wrote: Hi Guys, Any idea how to get the vertical scroll position for a RichTextBox? I have tried; [DllImport(user32)] public static extern bool GetScrollInfo(IntPtr hwnd, int fnBar, ref SCROLLINFO lpsi); [DllImport(user32)] public static extern int GetScrollPos(IntPtr hwnd, int nBar); [DllImport(user32)] public static extern int SendMessage(HWND hwnd, int wMsg, int wParam, IntPtr lParam); All these calls work under Visual Studio/windows but not under mono. My Environment: Windows XP, Visual Studio 2005 and Mono 2.0. What about richTextBox.GetPositionFromCharIndex (richTextBox.GetFirstCharIndexFromLine (0)).Y ? -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Fwd: RichTextBox Scroll Position
-- Forwarded message -- From: [EMAIL PROTECTED] Date: Tue, Oct 21, 2008 at 4:28 PM Subject: Re: RichTextBox Scroll Position To: [EMAIL PROTECTED] Hi Ivan, Thanks so much for the hint. It works like a charm! Kind Regards, Al Ivan N. Zlatev wrote: On Mon, Oct 20, 2008 at 5:00 PM, Alisdair Little [EMAIL PROTECTED] wrote: Hi Guys, Any idea how to get the vertical scroll position for a RichTextBox? I have tried; [DllImport(user32)] public static extern bool GetScrollInfo(IntPtr hwnd, int fnBar, ref SCROLLINFO lpsi); [DllImport(user32)] public static extern int GetScrollPos(IntPtr hwnd, int nBar); [DllImport(user32)] public static extern int SendMessage(HWND hwnd, int wMsg, int wParam, IntPtr lParam); All these calls work under Visual Studio/windows but not under mono. My Environment: Windows XP, Visual Studio 2005 and Mono 2.0. What about richTextBox.GetPositionFromCharIndex (richTextBox.GetFirstCharIndexFromLine (0)).Y ? -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list Quoted from: http://www.nabble.com/RichTextBox-Scroll-Position-tp20073031p20092389.html -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] When passing managed array of COM object references (Marshaled as UnmanagedType.LPArray) to native Code, expected native COM ptrs are invalid.
On Fri, Aug 15, 2008 at 2:43 AM, Tom Hindle [EMAIL PROTECTED] wrote: Hi, When passing managed array of COM object references (Marshaled as UnmanagedType.LPArray) to native Code, expected native COM ptrs are invalid. This same technique works when running on MS .Net. If it works on MS.NET and not on Mono then it's a bug and as such it should be filed with a small self-contained test case. For information on how to file bugs check: http://mono-project.com/Bugs . 1. I'm running on Linux (Hardy), using mono build from svn. 2. I have created 2 C++ COM objects using libCom. 3. I have created a c# Interop to call/create these COM objects. relevant line in Interop is: [MethodImpl(MethodImplOptions.InternalCall,MethodCodeType=MethodCodeType.Runtime)] public virtual extern void PassComArray( int length, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex=0] INativeCreatedObject[] a); 4. I create an instance of the COM object in c# I use that to return a Naively created COM object to c#. I can use this COM object in c#. However passing this COM object ref as an array back to native doesn't work. IE: Test t = new Test(); // Create Com object Test INativeCreatedObject i; t.CreateNativeObject(out i); // return another Com object created naively. // prints address as 0x83cbd50 i.DoSomething(); // Works fine. // Create managed array INativeCreatedObject[] array = new INativeCreatedObject[10]; array[0] = i; t.PassComArray(1, array); // address of array element 0 is 0x60d80 not 0x83cbd50 which means using the COM object ptr will crash. 5. This Marshaling technique works in mono when passing int's. IE: MethodImpl(MethodImplOptions.InternalCall, MethodCodeType=MethodCodeType.Runtime)] public virtual extern void PassIntArray([MarshalAs(UnmanagedType.LPArray, SizeParamIndex=0)] int length, int[] a); 6. after gdb-ing mono I suspect the problem with the CIL that is generated for the marshaling (is it called the Runtime Callable Wrapper?) However I can't verify this as I can't program in any Assembler :( I have a work around using a custom marshaler, but I would rather use the same interops on both Windows and Linux. Thanks in advance for any advice. Tom ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- Kind Regards, Ivan N. Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Patch for mwf-designer
Petit Eric wrote: Hi Ivan, the last SVN version seem to always have the case naming problem, who fire exception no codebhind .designer.cs vs .Designer.cs, unlluke, i have errase the fix i did after the svn up, but from my memory it was a simple or, i think it should be better to use something like StringComparison.OrdinalIgnoreCase. or a function to check if the file is Designer.cs or .designer.cs .. This is now fixed in r108680. I made the search for codebehind file case insensitive. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Patch for mwf-designer
Guillaume Simard wrote: Hello, Please find attached a suggested patch for mwf-designer, which corrects improper exception handling when empty fields are provided in the NewFileDialog dialog box (upon pressing Done). Thanks for the patch. I have applied it in SVN. However I had to edit it prior to that, because you haven't followed Mono's coding style guidelines. I assume you just weren't aware of them, so it's okay for this patch, but please keep in mind for the next. Now, to reply to the message you sent me privately through my blog, where you were showing general interest of the status of the mwf-designer and you were expressing interest in contributing. During the weekend I have updated the designer wiki page at http://www.mono-project.com/WinForms_Designer. Now you will find much better information and documentation resources. Please read it through. You will find a lot of goodies, including documentation resources, installation guide, but probably most important for you (as you have stated that you are a hardcore Visual Studio user) will be the fact that during the weekend I have made it possible to fully develop, debug, use, etc mono's design-time code (subset of the System.Design assembly) + the windows forms designer in Visual Studio and run it on MS.NET. This should give you a kick-start if you are interested in contributing. The wiki page has all of the details. The wiki page, the source code and the documentation resources section on the wiki page, which includes my dissertation from last year titled Building User Interface Design Tools could be of interest for someone looking into that area. Definitely poke me if you have any questions or you need help with getting around the code. Kind Regards, Ivan Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] TypeDescriptor
On Wed, Apr 30, 2008 at 7:36 PM, James Fitzsimons [EMAIL PROTECTED] wrote: 2008/4/28 Ivan N. Zlatev [EMAIL PROTECTED]: On Mon, Apr 28, 2008 at 11:28 PM, James Fitzsimons [EMAIL PROTECTED] wrote: 2008/4/28 Ivan N. Zlatev [EMAIL PROTECTED]: 2008/4/28 James Fitzsimons [EMAIL PROTECTED]: Hi all, While debugging a problem with Spring.NET over the weekend I uncovered an inconsistency in behaviour between the Mono and Microsoft implementations of the GetProperties method of the TypeDescriptor class. Basically the Microsoft only returns properties that have a getter, however Mono returns write only properties as well. The attached patch contains a fix and a few more unit tests to check that it works and it doesn't break existing behaviour. Please fix the following things and resend: 1) Reformat your patch to match our coding guidelines - http://www.mono-project.com/Coding_Guidelines 2) Add ChangeLog entries. 3) Fix the mixed indentation in the code in the tests you've added. 4) Fix the indentation in this hunk: @@ -427,6 +447,9 @@ MyComponent sitedcom = new MyComponent (new MySite ()); MyComponent nfscom = new MyComponent (new NoFilterSite (new MyContainer ())); AnotherComponent anothercom = new AnotherComponent (); + TestObject testObject = new TestObject(); +PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(testObject); + [Test] public void TestICustomTypeDescriptor () Cheers, Ivan Maybe this time? Two more things: 1) Refactor all your asserts into 1 test method, say TestGetProperties_WriteOnly and drop the fields - use local variables inside. No need for PropertyDescriptorExists, just check the propertydescriptorcollection[property] != null inside that test method like the other tests do. Number the asserts. 2) There is no need for a special TestObject - just add a single write-only property MyComponent and use that. You will also have to add it to the GetProperties_Order test Resend when those are fixed, thanks. Hi Ivan, I've done as you requested and checked all tests still pass. I have applied your patch with a further slight modification of the tests in r102535, thanks. Ivan. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] TypeDescriptor
2008/4/28 James Fitzsimons [EMAIL PROTECTED]: Hi all, While debugging a problem with Spring.NET over the weekend I uncovered an inconsistency in behaviour between the Mono and Microsoft implementations of the GetProperties method of the TypeDescriptor class. Basically the Microsoft only returns properties that have a getter, however Mono returns write only properties as well. The attached patch contains a fix and a few more unit tests to check that it works and it doesn't break existing behaviour. Please fix the following things and resend: 1) Reformat your patch to match our coding guidelines - http://www.mono-project.com/Coding_Guidelines 2) Add ChangeLog entries. 3) Fix the mixed indentation in the code in the tests you've added. 4) Fix the indentation in this hunk: @@ -427,6 +447,9 @@ MyComponent sitedcom = new MyComponent (new MySite ()); MyComponent nfscom = new MyComponent (new NoFilterSite (new MyContainer ())); AnotherComponent anothercom = new AnotherComponent (); + TestObject testObject = new TestObject(); +PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(testObject); + [Test] public void TestICustomTypeDescriptor () Cheers, Ivan ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] TypeDescriptor
On Mon, Apr 28, 2008 at 11:28 PM, James Fitzsimons [EMAIL PROTECTED] wrote: 2008/4/28 Ivan N. Zlatev [EMAIL PROTECTED]: 2008/4/28 James Fitzsimons [EMAIL PROTECTED]: Hi all, While debugging a problem with Spring.NET over the weekend I uncovered an inconsistency in behaviour between the Mono and Microsoft implementations of the GetProperties method of the TypeDescriptor class. Basically the Microsoft only returns properties that have a getter, however Mono returns write only properties as well. The attached patch contains a fix and a few more unit tests to check that it works and it doesn't break existing behaviour. Please fix the following things and resend: 1) Reformat your patch to match our coding guidelines - http://www.mono-project.com/Coding_Guidelines 2) Add ChangeLog entries. 3) Fix the mixed indentation in the code in the tests you've added. 4) Fix the indentation in this hunk: @@ -427,6 +447,9 @@ MyComponent sitedcom = new MyComponent (new MySite ()); MyComponent nfscom = new MyComponent (new NoFilterSite (new MyContainer ())); AnotherComponent anothercom = new AnotherComponent (); + TestObject testObject = new TestObject(); +PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(testObject); + [Test] public void TestICustomTypeDescriptor () Cheers, Ivan Maybe this time? Two more things: 1) Refactor all your asserts into 1 test method, say TestGetProperties_WriteOnly and drop the fields - use local variables inside. No need for PropertyDescriptorExists, just check the propertydescriptorcollection[property] != null inside that test method like the other tests do. Number the asserts. 2) There is no need for a special TestObject - just add a single write-only property MyComponent and use that. You will also have to add it to the GetProperties_Order test Resend when those are fixed, thanks. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Regression in r99253 trunk/mcs/class/System.Design/System.ComponentModel.Design?
On Sat, Mar 29, 2008 at 12:36 AM, Andreas Nahr [EMAIL PROTECTED] wrote: If I understand the changes correctly with the patch the list will now repopulate with any change. This makes the class unusable in a lot of situations (every situation where population is slow in the first place). Moreover this is not the case in .Net. The code will only repopulate the list if: 1) The value of the property edited *in the PropertyGrid* is changed *and* the collectioneditor form is opened at that moment (itemDisplay_PropertyValueChanged) 2) If OnEditValueChanged is called, which in our code is done only once when EditValue is initialized This commit does not change the logic above. Or am I missing something? Is there any special goal why the existing code is changed? (changelog is unspecific) Changelog is unspecific because I forgot to link to the bugs that the code fixes - #365940 and #365942. Also there were a couple of other small issues. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Possible bug in r97246 - trunk/mcs/class/System.Drawing/System.Drawing
On Tue, Mar 4, 2008 at 9:40 AM, Andreas Nahr [EMAIL PROTECTED] wrote: The change in r97246 is likely buggy, because the comparison is now done on the current locale but should likely be ordinalIgnoreCase or InvariantIgnoreCase. You were right. This is fixed in r97619. Thanks. Ivan. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Possible bug in r97246 - trunk/mcs/class/System.Drawing/System.Drawing
I will look into this tomorrow, cheers. On Tue, Mar 4, 2008 at 9:40 AM, Andreas Nahr [EMAIL PROTECTED] wrote: The change in r97246 is likely buggy, because the comparison is now done on the current locale but should likely be ordinalIgnoreCase or InvariantIgnoreCase. Happy Hacking Andreas ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] corlib GetCustomAttributes for overriden properties bug
On Tue, Feb 26, 2008 at 5:47 AM, Raja R Harinath [EMAIL PROTECTED] wrote: Hi, Ivan N. Zlatev [EMAIL PROTECTED] writes: On Mon, Feb 25, 2008 at 9:43 PM, Ivan N. Zlatev [EMAIL PROTECTED] wrote: Please review the attached patch that fixes our behavior to match MS's in terms of GetCustomAttributes for overridden attributes on properties. That is: * PropertyInfo.GetCustomAttributes - Inherit parameter is ignored and behavior defaults to false * Attributes.GetCustomAttributes - Inherit parameter is not ignored * Attributes.IsDefined - Inherit parameter is not ignored on the 2.0 profile. This patch fixes bugs #324472 and #322464. Also now all our Attribute tests pass on 1.1 and 2.0 profiles(woho!). Please say whether it's okay to commit and if the fixes should be backported. The previous patch did not handle indexed properties. Attached is an updated patch. I did a clean rebuild with the patch applied - no breakages. All Attributes tests pass. Zoltan, what do you think? Since this affects reflection, one good testcase is that it doesn't break the compiler. Can you check that this doesn't break make compiler-tests (you need to run this from the mono/ tree). Done that and there are no breakages. I talked with Zoltan on IRC last night and he said the patch looks okay. I am going to commit it. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] corlib GetCustomAttributes for overriden properties bug
On Tue, Feb 26, 2008 at 1:05 PM, Ivan N. Zlatev [EMAIL PROTECTED] wrote: On Tue, Feb 26, 2008 at 5:47 AM, Raja R Harinath [EMAIL PROTECTED] wrote: Hi, Ivan N. Zlatev [EMAIL PROTECTED] writes: On Mon, Feb 25, 2008 at 9:43 PM, Ivan N. Zlatev [EMAIL PROTECTED] wrote: Please review the attached patch that fixes our behavior to match MS's in terms of GetCustomAttributes for overridden attributes on properties. That is: * PropertyInfo.GetCustomAttributes - Inherit parameter is ignored and behavior defaults to false * Attributes.GetCustomAttributes - Inherit parameter is not ignored * Attributes.IsDefined - Inherit parameter is not ignored on the 2.0 profile. This patch fixes bugs #324472 and #322464. Also now all our Attribute tests pass on 1.1 and 2.0 profiles(woho!). Please say whether it's okay to commit and if the fixes should be backported. The previous patch did not handle indexed properties. Attached is an updated patch. I did a clean rebuild with the patch applied - no breakages. All Attributes tests pass. Zoltan, what do you think? Since this affects reflection, one good testcase is that it doesn't break the compiler. Can you check that this doesn't break make compiler-tests (you need to run this from the mono/ tree). Done that and there are no breakages. I talked with Zoltan on IRC last night and he said the patch looks okay. I am going to commit it. For the record - committed as revision 96632. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] [PATCH] corlib GetCustomAttributes for overriden properties bug
Please review the attached patch that fixes our behavior to match MS's in terms of GetCustomAttributes for overridden attributes on properties. That is: * PropertyInfo.GetCustomAttributes - Inherit parameter is ignored and behavior defaults to false * Attributes.GetCustomAttributes - Inherit parameter is not ignored * Attributes.IsDefined - Inherit parameter is not ignored on the 2.0 profile. This patch fixes bugs #324472 and #322464. Also now all our Attribute tests pass on 1.1 and 2.0 profiles(woho!). Please say whether it's okay to commit and if the fixes should be backported. Cheers! -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. Index: System/MonoCustomAttrs.cs === --- System/MonoCustomAttrs.cs (revision 96538) +++ System/MonoCustomAttrs.cs (working copy) @@ -320,18 +320,12 @@ if (obj is MonoProperty) { MonoProperty prop = (MonoProperty) obj; -method = prop.GetGetMethod (true); -if (method == null) - method = prop.GetSetMethod (true); -/* -MonoProperty prop = (MonoProperty) obj; if (prop.DeclaringType.BaseType != null) { PropertyInfo baseProp = prop.DeclaringType.BaseType.GetProperty (prop.Name); if (baseProp != prop) return baseProp; } return null; -*/ } else if (obj is MonoMethod) { Index: System/ChangeLog === --- System/ChangeLog (revision 96538) +++ System/ChangeLog (working copy) @@ -1,3 +1,12 @@ +2008-02-25 Ivan N. Zlatev [EMAIL PROTECTED] + + * Attribute.cs, MonoCustomAttrs: MS ignores the inherit param in + PropertyInfo's ICustomAttributeProvider implementation, but not + in the Attributes, so directly get the attributes from + MonoCustomAttrs instead of going throught the PropertyInfo's + ICustomAttributeProvider. + [Fixes bugs #324472 and #322464] + 2008-02-25 Atsushi Enomoto [EMAIL PROTECTED] * DateTime.cs, DateTimeUtils.cs : make Kind value from parse result Index: System/Attribute.cs === --- System/Attribute.cs (revision 96538) +++ System/Attribute.cs (working copy) @@ -224,6 +224,13 @@ // element parameter is not allowed to be null CheckParameters (element, type); + // MS ignores the inherit param in PropertyInfo's ICustomAttributeProvider + // implementation, but not in the Attributes, so directly get the attributes + // from MonoCustomAttrs instead of going throught the PropertyInfo's + // ICustomAttributeProvider + MemberTypes mtype = element.MemberType; + if (mtype == MemberTypes.Property) +return (Attribute []) MonoCustomAttrs.GetCustomAttributes (element, type, inherit); return (Attribute []) element.GetCustomAttributes (type, inherit); } @@ -248,6 +255,13 @@ // element parameter is not allowed to be null CheckParameters (element, typeof (Attribute)); + // MS ignores the inherit param in PropertyInfo's ICustomAttributeProvider + // implementation, but not in the Attributes, so directly get the attributes + // from MonoCustomAttrs instead of going throught the PropertyInfo's + // ICustomAttributeProvider + MemberTypes mtype = element.MemberType; + if (mtype == MemberTypes.Property) +return (Attribute []) MonoCustomAttrs.GetCustomAttributes (element, inherit); return (Attribute []) element.GetCustomAttributes (inherit); } @@ -301,7 +315,14 @@ mtype != MemberTypes.NestedType) throw new NotSupportedException (Locale.GetText ( Element is not a constructor, method, property, event, type or field.)); - +#if NET_2_0 + // MS ignores the inherit param in PropertyInfo's ICustomAttributeProvider + // implementation, but not in the Attributes, so directly get the attributes + // from MonoCustomAttrs instead of going throught the PropertyInfo's + // ICustomAttributeProvider + if (mtype == MemberTypes.Property) +return MonoCustomAttrs.IsDefined (element, attributeType, inherit); +#endif return ((MemberInfo) element).IsDefined (attributeType, inherit); } Index: Test/System/AttributeTest.cs === --- Test/System/AttributeTest.cs (revision 96538) +++ Test/System/AttributeTest.cs (working copy) @@ -129,9 +129,6 @@ } [Test] -#if NET_2_0 - [Category (NotWorking)] // bug #81797 -#endif public void IsDefined_PropertyInfo_Override () { PropertyInfo pi = typeof (TestSub).GetProperty (PropBase3); @@ -218,7 +215,6 @@ } [Test] - [Category (NotWorking)] // bug #81797 public void GetCustomAttribute_PropertyInfo_Override () { PropertyInfo pi = typeof (TestSub).GetProperty (PropBase3); @@ -607,7 +603,6 @@ } [Test] - [Category (NotWorking)] // bug #81797 public void GetCustomAttributes_PropertyInfo_Override () { object [] attrs; Index: Test/System/ChangeLog
Re: [Mono-dev] [PATCH] corlib GetCustomAttributes for overriden properties bug
On Mon, Feb 25, 2008 at 9:43 PM, Ivan N. Zlatev [EMAIL PROTECTED] wrote: Please review the attached patch that fixes our behavior to match MS's in terms of GetCustomAttributes for overridden attributes on properties. That is: * PropertyInfo.GetCustomAttributes - Inherit parameter is ignored and behavior defaults to false * Attributes.GetCustomAttributes - Inherit parameter is not ignored * Attributes.IsDefined - Inherit parameter is not ignored on the 2.0 profile. This patch fixes bugs #324472 and #322464. Also now all our Attribute tests pass on 1.1 and 2.0 profiles(woho!). Please say whether it's okay to commit and if the fixes should be backported. The previous patch did not handle indexed properties. Attached is an updated patch. I did a clean rebuild with the patch applied - no breakages. All Attributes tests pass. Zoltan, what do you think? Cheers. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. Index: System/MonoCustomAttrs.cs === --- System/MonoCustomAttrs.cs (revision 96538) +++ System/MonoCustomAttrs.cs (working copy) @@ -305,6 +305,31 @@ [MethodImplAttribute (MethodImplOptions.InternalCall)] internal static extern bool IsDefinedInternal (ICustomAttributeProvider obj, Type AttributeType); + static PropertyInfo GetBasePropertyDefinition (PropertyInfo property) + { + MethodInfo method = property.GetGetMethod (true); + if (method == null || !method.IsVirtual) +method = property.GetSetMethod (true); + if (method == null || !method.IsVirtual) +return null; + + MethodInfo baseMethod = method.GetBaseDefinition (); + if (baseMethod != null baseMethod != method) { +ParameterInfo[] parameters = property.GetIndexParameters (); +if (parameters != null parameters.Length 0) { + Type[] paramTypes = new Type[parameters.Length]; + for (int i=0; i paramTypes.Length; i++) + paramTypes[i] = parameters[i].ParameterType; + return baseMethod.DeclaringType.GetProperty (property.Name, property.PropertyType, + paramTypes); +} else { + return baseMethod.DeclaringType.GetProperty (property.Name, property.PropertyType); +} + } + return null; + + } + // Handles Type, MonoProperty and MonoMethod. // The runtime has also cases for MonoEvent, MonoField, Assembly and ParameterInfo, // but for those we return null here. @@ -318,25 +343,9 @@ MethodInfo method = null; if (obj is MonoProperty) - { -MonoProperty prop = (MonoProperty) obj; -method = prop.GetGetMethod (true); -if (method == null) - method = prop.GetSetMethod (true); -/* -MonoProperty prop = (MonoProperty) obj; -if (prop.DeclaringType.BaseType != null) { - PropertyInfo baseProp = prop.DeclaringType.BaseType.GetProperty (prop.Name); - if (baseProp != prop) - return baseProp; -} -return null; -*/ - } +return GetBasePropertyDefinition ((MonoProperty) obj); else if (obj is MonoMethod) - { method = (MethodInfo) obj; - } /** * ParameterInfo - null Index: System/ChangeLog === --- System/ChangeLog (revision 96538) +++ System/ChangeLog (working copy) @@ -1,3 +1,12 @@ +2008-02-25 Ivan N. Zlatev [EMAIL PROTECTED] + + * Attribute.cs, MonoCustomAttrs: MS ignores the inherit param in + PropertyInfo's ICustomAttributeProvider implementation, but not + in the Attributes, so directly get the attributes from + MonoCustomAttrs instead of going throught the PropertyInfo's + ICustomAttributeProvider. + [Fixes bugs #324472 and #322464] + 2008-02-25 Atsushi Enomoto [EMAIL PROTECTED] * DateTime.cs, DateTimeUtils.cs : make Kind value from parse result Index: System/Attribute.cs === --- System/Attribute.cs (revision 96538) +++ System/Attribute.cs (working copy) @@ -224,6 +224,13 @@ // element parameter is not allowed to be null CheckParameters (element, type); + // MS ignores the inherit param in PropertyInfo's ICustomAttributeProvider + // implementation, but not in the Attributes, so directly get the attributes + // from MonoCustomAttrs instead of going throught the PropertyInfo's + // ICustomAttributeProvider + MemberTypes mtype = element.MemberType; + if (mtype == MemberTypes.Property) +return (Attribute []) MonoCustomAttrs.GetCustomAttributes (element, type, inherit); return (Attribute []) element.GetCustomAttributes (type, inherit); } @@ -248,6 +255,13 @@ // element parameter is not allowed to be null CheckParameters (element, typeof (Attribute)); + // MS ignores the inherit param in PropertyInfo's ICustomAttributeProvider + // implementation, but not in the Attributes, so directly get the attributes + // from MonoCustomAttrs instead of going throught the PropertyInfo's
Re: [Mono-dev] Patch for System.ComponentModel.TypeDescriptor
On Thu, 2008-01-03 at 03:32 -0800, Vladimir Krasnov wrote: Hi Ivan, You are right, I've reverted the Hashtable patch and everything works fine. TestGetProperties in TypeDescriptorTests is ok also. Look at attached patch. Looks good, please commit, thanks. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ivan N. Zlatev Sent: Thursday, January 03, 2008 2:24 AM To: mono-devel-list@lists.ximian.com Subject: Re: [Mono-dev] Patch for System.ComponentModel.TypeDescriptor Vladimir Krasnov wrote: Hello, Please review and approve attached patch for TypeDescriptor.GetProperties() method. This fixes the order of properties in the returning collection which is important for System.Web data bound controls. You can get rid off the Hashtable used in TypeInfo.GetProperties. I introduced it because at some point Type.GetProperties used to return two AnotherProperty PropertyInfos for typeof(B) in the following case: class A { public string AnotherProperty { } } class B : A { public new string AnotherProperty { } } It seems to no longer be the case (back then I did not test the Type.GetProperties behavior on msnet and assumed bug in TypeDescriptor), but you should test to make sure. You can check test #G2 in TestGetProperties in TypeDescriptorTests. Regards, -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Patch for System.ComponentModel.TypeDescriptor
Vladimir Krasnov wrote: Hello, Please review and approve attached patch for TypeDescriptor.GetProperties() method. This fixes the order of properties in the returning collection which is important for System.Web data bound controls. You can get rid off the Hashtable used in TypeInfo.GetProperties. I introduced it because at some point Type.GetProperties used to return two AnotherProperty PropertyInfos for typeof(B) in the following case: class A { public string AnotherProperty { } } class B : A { public new string AnotherProperty { } } It seems to no longer be the case (back then I did not test the Type.GetProperties behavior on msnet and assumed bug in TypeDescriptor), but you should test to make sure. You can check test #G2 in TestGetProperties in TypeDescriptorTests. Regards, -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Patch for System.ComponentModel.PropertyDescriptionCollection
Vladimir Krasnov wrote: Hello, Please review and approve attached patch for System.ComponentModel.PropertyDescriptionCollection. It fixed Find method that should not use culture sensitive string compare. Please commit, thanks. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] System.ComponentModel.Design.CheckoutException
Arina Itkes wrote: Hello, Please review the patch. It includes small change for ctors of CheckoutException: CheckoutException should not be initialized with ErrorCode = 0 by default. Please commit, thanks. Regards, Ivan Zlatev ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] mono CodeDom problem
[EMAIL PROTECTED] wrote: Hi Guys: I have this code from a example of a simple code generator with CodeDom (from here http://www.15seconds.com/issue/020917.htm , I list the code at end of the message), but with mono I only get the using and namespace declarations...I see in the status page of mono that the codedom is allmost complete, do you have some examples? I didn't bother to go through the article, but the code sample is wrong and broken in many aspects. But to answer your question - there is nothing wrong with Mono's CodeDom C# code generator. It won't generate anything more than the namespace essentially because the author never adds the class to the namespace (e.g via: cnsCodeDom.Types.Add (ctd); ). Based on the code sample I wouldn't recommend this article. A good starting point is http://msdn2.microsoft.com/en-us/library/aa720100(VS.71).aspx Regard, Ivan Zlatev thanks Mauricio using System; using System.CodeDom; using System.CodeDom.Compiler; using System.Reflection; using System.IO; using Microsoft.CSharp; using Microsoft.VisualBasic; namespace CodeDomPartOne { /// /// Summary description for Briefcase. /// public class Briefcase { //Member Variables private string m_strFileName; private string m_Suffix = .cs; public Briefcase(string strFileName) { m_strFileName = strFileName; }public void CreateCodeDomBriefcase() { //Initialize CodeDom Variables //para windows //Stream s = File.Open(c:\\ + m_strFileName + m_Suffix, FileMode.Create); //para linux Stream s = File.Open( + m_strFileName + m_Suffix, FileMode.Create); StreamWriter sw = new StreamWriter(s); CSharpCodeProvider cscProvider = new CSharpCodeProvider(); ICodeGenerator cscg = cscProvider.CreateGenerator(sw); CodeGeneratorOptions cop = new CodeGeneratorOptions(); //Create Class Using Statements CodeSnippetCompileUnit csu1 = new CodeSnippetCompileUnit(using System); CodeSnippetCompileUnit csu2 = new CodeSnippetCompileUnit(using System.IO); cscg.GenerateCodeFromCompileUnit(csu1, sw, cop); cscg.GenerateCodeFromCompileUnit(csu2, sw, cop); sw.WriteLine(); //Create Class Namespaces CodeNamespace cnsCodeDom = new CodeNamespace(CodeDom); //Create Class Declaration CodeTypeDeclaration ctd = new CodeTypeDeclaration(); ctd.IsClass = true; ctd.Name = Briefcase; ctd.TypeAttributes = TypeAttributes.Public; //Create Class Member Fields sw.WriteLine(); CodeMemberField cmfBriefcaseName = new CodeMemberField(string,m_BriefcaseName); cmfBriefcaseName.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseName); CodeMemberField cmfBriefcaseTitle = new CodeMemberField(string, m_BriefcaseTitle); cmfBriefcaseTitle.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseTitle); CodeMemberField cmfBriefcaseID = new CodeMemberField(int, m_cmfBriefcaseID); cmfBriefcaseID.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseID); CodeMemberField cmfBriefcaseSectionID = new CodeMemberField(int, m_BriefcaseSectionID); cmfBriefcaseSectionID.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseSectionID); CodeMemberField cmfBriefcaseFolderID = new CodeMemberField(int, m_BriefcaseFolderID); cmfBriefcaseFolderID.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseFolderID); CodeMemberField cmfBriefcaseItemID = new CodeMemberField(int, m_BriefcaseItemID); cmfBriefcaseItemID.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseItemID); //Create Class Constructor CodeConstructor ccon = new CodeConstructor(); ccon.Attributes = MemberAttributes.Public; ccon.Statements.Add(new CodeSnippetStatement(//)); ccon.Statements.Add(new CodeSnippetStatement(// TODO: Add constructor logic here)); ccon.Statements.Add(new CodeSnippetStatement(//)); ctd.Members.Add(ccon); //Create Class BriefcaseName Property CodeMemberProperty mpBriefcaseName = new CodeMemberProperty(); mpBriefcaseName.Attributes = MemberAttributes.Private; mpBriefcaseName.Type = new CodeTypeReference(string); mpBriefcaseName.Name = BriefcaseName; mpBriefcaseName.HasGet = true; mpBriefcaseName.GetStatements.Add(new CodeSnippetExpression(return m_BriefcaseName)); mpBriefcaseName.HasSet = true; mpBriefcaseName.SetStatements.Add(new CodeSnippetExpression(m_BriefcaseName = value));
Re: [Mono-dev] mono CodeDom problem
[EMAIL PROTECTED] wrote: thanks Ivan, bad source info then, the link that you send me is broken, but of course I'm going to search for better info on the net.. The link opens fine here. Try this one - http://msdn2.microsoft.com/en-us/library/650ax5cx.aspx thanks again. Mauricio Ivan N. Zlatev wrote: [EMAIL PROTECTED] wrote: Hi Guys: I have this code from a example of a simple code generator with CodeDom (from here http://www.15seconds.com/issue/020917.htm , I list the code at end of the message), but with mono I only get the using and namespace declarations...I see in the status page of mono that the codedom is allmost complete, do you have some examples? I didn't bother to go through the article, but the code sample is wrong and broken in many aspects. But to answer your question - there is nothing wrong with Mono's CodeDom C# code generator. It won't generate anything more than the namespace essentially because the author never adds the class to the namespace (e.g via: cnsCodeDom.Types.Add (ctd); ). Based on the code sample I wouldn't recommend this article. A good starting point is http://msdn2.microsoft.com/en-us/library/aa720100(VS.71).aspx Regard, Ivan Zlatev thanks Mauricio using System; using System.CodeDom; using System.CodeDom.Compiler; using System.Reflection; using System.IO; using Microsoft.CSharp; using Microsoft.VisualBasic; namespace CodeDomPartOne { /// /// Summary description for Briefcase. /// public class Briefcase { //Member Variables private string m_strFileName; private string m_Suffix = .cs; public Briefcase(string strFileName) { m_strFileName = strFileName; }public void CreateCodeDomBriefcase() { //Initialize CodeDom Variables //para windows //Stream s = File.Open(c:\\ + m_strFileName + m_Suffix, FileMode.Create); //para linux Stream s = File.Open( + m_strFileName + m_Suffix, FileMode.Create); StreamWriter sw = new StreamWriter(s); CSharpCodeProvider cscProvider = new CSharpCodeProvider(); ICodeGenerator cscg = cscProvider.CreateGenerator(sw); CodeGeneratorOptions cop = new CodeGeneratorOptions(); //Create Class Using Statements CodeSnippetCompileUnit csu1 = new CodeSnippetCompileUnit(using System); CodeSnippetCompileUnit csu2 = new CodeSnippetCompileUnit(using System.IO); cscg.GenerateCodeFromCompileUnit(csu1, sw, cop); cscg.GenerateCodeFromCompileUnit(csu2, sw, cop); sw.WriteLine(); //Create Class Namespaces CodeNamespace cnsCodeDom = new CodeNamespace(CodeDom); //Create Class Declaration CodeTypeDeclaration ctd = new CodeTypeDeclaration(); ctd.IsClass = true; ctd.Name = Briefcase; ctd.TypeAttributes = TypeAttributes.Public; //Create Class Member Fields sw.WriteLine(); CodeMemberField cmfBriefcaseName = new CodeMemberField(string,m_BriefcaseName); cmfBriefcaseName.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseName); CodeMemberField cmfBriefcaseTitle = new CodeMemberField(string, m_BriefcaseTitle); cmfBriefcaseTitle.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseTitle); CodeMemberField cmfBriefcaseID = new CodeMemberField(int, m_cmfBriefcaseID); cmfBriefcaseID.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseID); CodeMemberField cmfBriefcaseSectionID = new CodeMemberField(int, m_BriefcaseSectionID); cmfBriefcaseSectionID.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseSectionID); CodeMemberField cmfBriefcaseFolderID = new CodeMemberField(int, m_BriefcaseFolderID); cmfBriefcaseFolderID.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseFolderID); CodeMemberField cmfBriefcaseItemID = new CodeMemberField(int, m_BriefcaseItemID); cmfBriefcaseItemID.Attributes = MemberAttributes.Private; ctd.Members.Add(cmfBriefcaseItemID); //Create Class Constructor CodeConstructor ccon = new CodeConstructor(); ccon.Attributes = MemberAttributes.Public; ccon.Statements.Add(new CodeSnippetStatement(//)); ccon.Statements.Add(new CodeSnippetStatement(// TODO: Add constructor logic here)); ccon.Statements.Add(new CodeSnippetStatement(//)); ctd.Members.Add(ccon); //Create Class BriefcaseName Property CodeMemberProperty mpBriefcaseName = new CodeMemberProperty(); mpBriefcaseName.Attributes = MemberAttributes.Private; mpBriefcaseName.Type = new CodeTypeReference(string
[Mono-dev] Mono Summit 2007 Photos
Dear Monkeys, I would like firstly to thank everyone for the great time I had during this Mono Summit. It was a pleasure for me to meet and spend this week with you guys. I suggest everyone replies to this e-mail with a link of his/her zip-ed/tar-ed/whatever photos of the event. Also if you don't feel like sharing your photos with The Others (you know, the ones that live on the other side of the island) I propose you archive them with a password same as the WiFi one from the summit. I could file a bug in bugzilla so we can track this easier. ;) Unfortunately I do not have any photos to share as I did not have a camera on me. Cheers! P.S: And no, I did not fix the transparency in WinForms... -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] HEAD build broken?
I am failing to compile HEAD r90040 because of the following: make[7]: Entering directory `/svn/mono/mcs/tools/tuner' make all-local make[8]: Entering directory `/svn/mono/mcs/tools/tuner' MONO_PATH=.:../../class/lib/default:$MONO_PATH /svn/mono/mono/runtime/mono-wrapper --debug ../linker/monolinker.exe -d ../../class/lib/net_2_1 -o ../../class/lib/net_2_1_tuned -l none -c link -a smcs -b true -m display_internalized false -x Descriptors/mscorlib.xml -x Descriptors/smcs.xml -x Descriptors/System.xml -s Mono.Tuner.InjectAttributes,Mono.Tuner:OutputStep -s Mono.Tuner.AdjustVisibility,Mono.Tuner:OutputStep -s Mono.Tuner.PrintStatus,Mono.Tuner:OutputStep -s Mono.Tuner.RemoveSerialization,Mono.Tuner:OutputStep -s Mono.Tuner.CheckVisibility,Mono.Tuner -i masterinfos/silverlight/mscorlib.info -i masterinfos/silverlight/System.info -i masterinfos/silverlight/System.Core.info -i masterinfos/silverlight/System.Xml.Core.info Fatal error in Mono CIL Linker System.TypeLoadException: Could not load type 'Mono.Tuner.InjectAttributes,Mono.Tuner'. at (wrapper managed-to-native) System.Type:internal_from_name (string,bool,bool) at System.Type.GetType (System.String typeName, Boolean throwOnError) [0x00011] in /svn/mono/mcs/class/corlib/System/Type.cs:457 at Mono.Linker.Driver.ResolveStep (System.String type) [0x0] in /svn/mono/mcs/tools/linker/Mono.Linker/Driver.cs:197 at Mono.Linker.Driver.AddCustomStep (Mono.Linker.Pipeline pipeline, System.String arg) [0x00053] in /svn/mono/mcs/tools/linker/Mono.Linker/Driver.cs:177 at Mono.Linker.Driver.Run () [0x001a6] in /svn/mono/mcs/tools/linker/Mono.Linker/Driver.cs:124 at Mono.Linker.Driver.Main (System.String[] args) [0x00014] in /svn/mono/mcs/tools/linker/Mono.Linker/Driver.cs:51 make[8]: *** [tune] Error 1 -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] HEAD build broken?
On 11/21/07, Atsushi Eno [EMAIL PROTECTED] wrote: Sometimes you need to do make PROFILE=net_2_1 clean under mcs, or make clean under mono when you aren't lucky enough, or sometimes even make maintainer-clean or distclean. Yeap, that helped. The buildbot is your friend if you are in doubt on build sanity ;-) http://mono.ximian.com/monobuild/python/monobuild.py Will check against that in the future Atsushi Eno Ivan N. Zlatev wrote: I am failing to compile HEAD r90040 because of the following: make[7]: Entering directory `/svn/mono/mcs/tools/tuner' make all-local make[8]: Entering directory `/svn/mono/mcs/tools/tuner' MONO_PATH=.:../../class/lib/default:$MONO_PATH /svn/mono/mono/runtime/mono-wrapper --debug ../linker/monolinker.exe -d ../../class/lib/net_2_1 -o ../../class/lib/net_2_1_tuned -l none -c link -a smcs -b true -m display_internalized false -x Descriptors/mscorlib.xml -x Descriptors/smcs.xml -x Descriptors/System.xml -s Mono.Tuner.InjectAttributes,Mono.Tuner:OutputStep -s Mono.Tuner.AdjustVisibility,Mono.Tuner:OutputStep -s Mono.Tuner.PrintStatus,Mono.Tuner:OutputStep -s Mono.Tuner.RemoveSerialization,Mono.Tuner:OutputStep -s Mono.Tuner.CheckVisibility,Mono.Tuner -i masterinfos/silverlight/mscorlib.info -i masterinfos/silverlight/System.info -i masterinfos/silverlight/System.Core.info -i masterinfos/silverlight/System.Xml.Core.info Fatal error in Mono CIL Linker System.TypeLoadException: Could not load type 'Mono.Tuner.InjectAttributes,Mono.Tuner'. at (wrapper managed-to-native) System.Type:internal_from_name (string,bool,bool) at System.Type.GetType (System.String typeName, Boolean throwOnError) [0x00011] in /svn/mono/mcs/class/corlib/System/Type.cs:457 at Mono.Linker.Driver.ResolveStep (System.String type) [0x0] in /svn/mono/mcs/tools/linker/Mono.Linker/Driver.cs:197 at Mono.Linker.Driver.AddCustomStep (Mono.Linker.Pipeline pipeline, System.String arg) [0x00053] in /svn/mono/mcs/tools/linker/Mono.Linker/Driver.cs:177 at Mono.Linker.Driver.Run () [0x001a6] in /svn/mono/mcs/tools/linker/Mono.Linker/Driver.cs:124 at Mono.Linker.Driver.Main (System.String[] args) [0x00014] in /svn/mono/mcs/tools/linker/Mono.Linker/Driver.cs:51 make[8]: *** [tune] Error 1 ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Bug Counts 11-16-07...
Those bug counts do not mean much. They do not show how many new bugs were opened during the period nor how many were closed. It might be also good to show how many bugs with needinfo are there and the resolve status of the closed bugs during the period (e.g how many resolved, wontfix, invalid, etc) Regards -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] 1.2.6 Release Notes
My notes as follows. System.Windows.Forms * SplitContainer now supports FixedPanel layouting. System.Design Initial implementation of the .Net 1.1 and .Net 2.0 Design-Time framework. Includes: * Hosting: DesignSurface, DesignSurfaceManager, etc. * CodeDom Serialization/Deserialization: CodeDomSerializer, CodeDomSerializerBase, DesignerSerializationManager, etc * Core WinForms Designers Stack: ComponentDesigner, ControlDesigner, ScrollableControlDesigner, ParentControlDesigner, DocumentDesigner, etc. P.S: I am starting a new thread because the original got polluted. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] CodeBehindService, ICodeBehindProvider - no support for partial classes?
Pardon me as this was supposed to go to the monodevel list. On 7/26/07, Ivan N. Zlatev [EMAIL PROTECTED] wrote: To me it seems that the current CodeBehindService implementation is based on class names and assumes that the code behind file will have a different class name than the code-in-front file. What about partial classes, where the class name will be the same? Regards. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] CodeBehindService, ICodeBehindProvider - no support for partial classes?
To me it seems that the current CodeBehindService implementation is based on class names and assumes that the code behind file will have a different class name than the code-in-front file. What about partial classes, where the class name will be the same? Regards. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] NestedContainer implementation + tests
On 6/24/07, Andreia Gaita [EMAIL PROTECTED] wrote: Hey, dude, sorry, everyone has been completely off due to the moonlight thing. You still need review on this? Yes, please :-). Ignore the Mono.Design namespace as I mentioned in my previous mail. P.S: you did a good thing hacking on moon :) -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] NestedContainer implementation + tests
On 6/9/07, Ivan N. Zlatev [EMAIL PROTECTED] wrote: Attached is the implementation for the System.ComponentModel.NestedContainer class and tests. Tests pass both on mono and msnet. Please review. Anyone? -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] [Patch] ContextStack 2.0 updates and refactor
Please review the attached patch that refactors the System.ComponentModel.Design.Serialization.ContextStack class in order to update it to NET_2_0. Cheers. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. Index: mcs/class/System/System.ComponentModel.Design.Serialization/ContextStack.cs === --- mcs/class/System/System.ComponentModel.Design.Serialization/ContextStack.cs (revision 79169) +++ mcs/class/System/System.ComponentModel.Design.Serialization/ContextStack.cs (working copy) @@ -4,9 +4,11 @@ // Author: // Alejandro Sánchez Acosta ([EMAIL PROTECTED]) // Andreas Nahr ([EMAIL PROTECTED]) +// Ivan N. Zlatev ([EMAIL PROTECTED]) // // (C) Alejandro Sánchez Acosta // (C) 2003 Andreas Nahr +// (C) 2007 Ivan N. Zlatev // // @@ -30,33 +32,31 @@ // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // +using System; using System.Collections; -namespace System.ComponentModel.Design.Serialization +namespace Mono.Design { public sealed class ContextStack { - private Stack stack; + private ArrayList _contextList; public ContextStack () { - stack = new Stack (); + stack = new ArrayList (); } public object Current { get { -try { - return stack.Peek (); -} -catch { - return null; -} +if (_contextList.Count 0) + return _contextList[_contextList.Count-1]; +return null; } } public object this[Type type] { get { -foreach (object o in stack.ToArray()) +foreach (object o in _contextList) if (o.GetType () == type) return o; return null; @@ -67,29 +67,39 @@ get { if (level 0) throw new ArgumentException (level has to be = 0,level); -Array A = stack.ToArray(); -if (level (A.Length - 1)) - return null; -return A.GetValue(level); +if (_contextList.Count 0 _contextList.Count level) + return _contextList[_contextList.Count - 1 - level]; +return null; } } public object Pop () { - return stack.Pop (); + object o = null; + if (_contextList.Count 0) { + int lastItem = _contextList.Count - 1; + o = _contextList[lastItem]; + _contextList.RemoveAt (lastItem); + } + return o; } public void Push (object context) { - stack.Push (context); + if (context == null) +throw new ArgumentNullException (context); + + _contextList.Add (context); } #if NET_2_0 - [MonoNotSupported ()] public void Append (object context) { - throw new NotImplementedException (); + if (context == null) +throw new ArgumentNullException (context); + _contextList.Insert (0, context); } #endif } } + ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [Patch] ContextStack 2.0 updates and refactor
On 6/12/07, Sebastien Pouliot [EMAIL PROTECTED] wrote: On Tue, 2007-06-12 at 11:45 +0300, Ivan N. Zlatev wrote: +using System; using System.Collections; -namespace System.ComponentModel.Design.Serialization +namespace Mono.Design { public sealed class ContextStack Really ? ;-) :). You can ignore that. I forgot to mail that I saw the error just after sending the mail to the list. (Currently I keep all of the design time code in my own repository until it's done - Mono.Design :) ). Else, is the patch okay to commit? -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] [PATCH] NestedContainer implementation + tests
Attached is the implementation for the System.ComponentModel.NestedContainer class and tests. Tests pass both on mono and msnet. Please review. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. Index: mcs/class/System/Test/System.ComponentModel/ChangeLog === --- mcs/class/System/Test/System.ComponentModel/ChangeLog (revision 78989) +++ mcs/class/System/Test/System.ComponentModel/ChangeLog (working copy) @@ -1,3 +1,7 @@ +2007-06-10 Ivan Zlatev [EMAIL PROTECTED] + + * NestedContainerTest.cs: Added. + 2006-05-31 Atsushi Enomoto [EMAIL PROTECTED] * LookupBindingPropertiesAttributeTest.cs: Index: mcs/class/System/Test/System.ComponentModel/NestedContainerTest.cs === --- mcs/class/System/Test/System.ComponentModel/NestedContainerTest.cs (revision 0) +++ mcs/class/System/Test/System.ComponentModel/NestedContainerTest.cs (revision 0) @@ -0,0 +1,161 @@ +// +// ControlDesignerTest +// +// Authors: +// Ivan N. Zlatev (contact i-nZ.net) +// +// (C) 2007 Ivan N. Zlatev + +// +// Permission is hereby granted, free of charge, to any person obtaining +// a copy of this software and associated documentation files (the +// Software), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to +// permit persons to whom the Software is furnished to do so, subject to +// the following conditions: +// +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// + +#if NET_2_0 + +using System; +using System.ComponentModel; +using System.Collections; +using NUnit.Core; +using NUnit.Framework; + + +namespace MonoTests.System.ComponentModel +{ + + [TestFixture] + public class NestedContainerTest : NestedContainer + { + + private class ContainerWithService : Container + { + + public class DesignModeEnabledSite : ISite { + +private IComponent _component; +private ContainerWithService _container; +private string _name; + +public DesignModeEnabledSite (string name, IComponent component, ContainerWithService container) +{ + _component = component; + _container = container; + _name = name; +} + +public IComponent Component { + get { return _component; } +} + +public IContainer Container { + get { return _container; } +} + +public bool DesignMode { + get { return true; } +} + +public string Name { + get { return _name; } + set { _name = value; } +} + +public virtual object GetService (Type t) +{ + if (typeof (ISite) == t) + return this; + + return _container.GetService (t); +} + } + + protected override object GetService (Type type) + { +if (typeof (ContainerWithService) == type) + return this; +else + return null; + } + + protected override ISite CreateSite (IComponent component, string name) + { +return new ContainerWithService.DesignModeEnabledSite (name, component, this); + } + } + + public NestedContainerTest () : base (new Component()) + { + } + + public NestedContainerTest (IComponent owner) : base (owner) + { + } + + [Test] + public void NameTest () + { + Container container = new Container (); + Component owner = new Component (); + container.Add (owner, OwnerName); + NestedContainerTest nestedContainer = new NestedContainerTest (owner); + Component nestedComponent = new Component (); + nestedContainer.Add (nestedComponent, NestedComponentName); + + Assert.AreEqual (OwnerName, nestedContainer.OwnerName, #1); + Assert.AreEqual (OwnerName.NestedComponentName, ((INestedSite)nestedComponent.Site).FullName, #2); + // Prooves that MSDN is wrong. + Assert.AreEqual (NestedComponentName, nestedComponent.Site.Name, #3); + + container.Remove (owner); + Assert.AreEqual (null, nestedContainer.OwnerName, #4); + Assert.AreEqual (NestedComponentName, ((INestedSite)nestedComponent.Site).FullName, #5); + } + + [Test] + public void GetServiceTest () + { + ContainerWithService container = new ContainerWithService (); + Component owner = new Component (); + container.Add (owner, OwnerName); + NestedContainerTest nestedContainer = new
Re: [Mono-dev] Feedback on release notes.
On 4/21/07, Joe Shaw [EMAIL PROTECTED] wrote: In there, you have this chunk: In addition to the old Mono.Data.Sqlite, we are now also shipping Mono.Data.Sqlite2, which is Robert Simpson's Sqlite binding for .NET adapted to ship with the Mono framework. Is the namespace really called Mono.Data.Sqlite2? Because that could be confusing, seeing as it only supports Sqlite 3.x. The convention is to call Sqlite 2.x sqlite2 and Sqlite 3.x sqlite3 or (at this point) sqlite. Also there is Mono.Data.SqliteClient as well. May be a bit of clarification which one is recommended to use won't hurt. Regards. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] how to get the runtime environment?
On 2/17/07, Luis A. Pinzón [EMAIL PROTECTED] wrote: Hi, in runtime I need know if the framework is mono o microsoft. http://mono-project.com/FAQ:_Technical#How_to_detect_the_execution_platform_.3F -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Request for Final Year Project Ideas
Hey, * Speech recognition I don't see how a speech recognition is really related to mono. I don't think C#/mono is a right choice for such a thing anyway, also I am quite certain that there is something of quality out there already or even if there isn't there is probably some code base available. * Plugin Framework I agree with what Miguel said about the plugin framework. * WPF This sounds like quite a major and huge thing. Unfortunatly I am not a one man army and I will have to have some working deliverables (and I doubt a Hey look! I've managed to get a WPF button to show up will do very well :-) ). I might be wrong of course. * Olive I am not targeting at anything currently, because I don't have a particular idea in mind. I don't particulary like the idea of abstraction layers. As for something like the olive tree - if it is self-contained and realistic and has good deliverables in terms of product type of thing. * FTP Nothing personal, but not yet another FTP client please. Instead of wasting your time on reinventing the wheel, you should have improved something that is already there and learned from its code base. Not meaning to be harsh or anything. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Request for Final Year Project Ideas
Hey! Next year is my final year in university and in the next 2 weeks I have to come up with a Final Year Project proposal. Initially I thought I would do the WinForms Design-Time stuff (some of you might know I've been researching and working in this area for a while now), but I am quite certain that I should be done with it before the beginning of my next university year. So. currently I don't have a clue what to come up with. I would like to kindly ask you to share some project ideas. Think in terms of Google SoC type of thing, but for free. :-). The idea is going to be rated (but not marked) in the context of its Research, Analysis, Design, Implementation Volume and Implementation Intensity factors and its going to be implemented starting from September 2007. I would like to work on something that will end up being useful and not some crappy abstract research type of thing. The more complex the ideas is the better IMHO. I like challenges. A bit of background info: I am not new to Mono, I've been following the project for a while now and in theory I should be familiar with the code base. I am a Linux user and I am also good in C. I am looking forward to your replies, full of ideas! Regards. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Request for Final Year Project Ideas
On 2/12/07, Matthijs ter Woord [EMAIL PROTECTED] wrote: Should the project be some kind of mono subproject? Well I am not sure how do you define subproject, but it has to be something complete. For example Implement .net 2.0 members for blabla won't do it. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Strange crash when building SVN Head
-2.0.so.0 #5 0x0815e8c0 in mono_handle_native_sigsegv (signal=6, ctx=0xb74ff85c) at mini-exceptions.c:1073 #6 signal handler called #7 0xe410 in __kernel_vsyscall () #8 0xb7d8a7d0 in raise () from /lib/libc.so.6 #9 0xb7d8bea3 in abort () from /lib/libc.so.6 #10 0xb7eed1bd in g_logv () from /opt/gnome/lib/libglib-2.0.so.0 #11 0xb7eed205 in g_log () from /opt/gnome/lib/libglib-2.0.so.0 #12 0xb7eed286 in g_assert_warning () from /opt/gnome/lib/libglib-2.0.so.0 #13 0x080f4c41 in mono_class_from_mono_type (type=0x14764) at class.c:3402 #14 0x0812daf6 in mono_compile_create_var (cfg=0x0, type=0x14764, opcode=320) at mini.c:1592 #15 0x08149050 in mini_method_compile (method=0x848fc8c, opts=5335551, domain=0x21ed8, run_cctors=value optimized out, compile_aot=value optimized out, parts=0) at mini.c:9476 #16 0x0814aaf1 in mono_jit_compile_method (method=0x848fc8c) at mini.c:10388 #17 0x0814b115 in mono_jit_runtime_invoke (method=0x82513ec, obj=0x52eb0, params=0x0, exc=0xb7500308) at mini.c:10655 #18 0x080aede3 in run_finalize (obj=0x52eb0, data=0x0) at gc.c:103 #19 0x0811c041 in GC_invoke_finalizers () at finalize.c:787 #20 0x080aef99 in finalizer_thread (unused=0x0) at gc.c:838 #21 0x080c91a4 in start_wrapper (data=0x82202a0) at threads.c:313 #22 0x0810fede in thread_start_routine (args=0xb789a3b4) at threads.c:253 #23 0x08126365 in GC_start_routine (arg=0x22f40) at pthread_support.c:1357 #24 0xb7eac34b in start_thread () from /lib/libpthread.so.0 #25 0xb7e1f65e in clone () from /lib/libc.so.6 Thread 1 (Thread -1210705600 (LWP 15834)): #0 0x0812bacd in emit_state (cfg=0x8233a18, state=0x83a0d2c, goal=3) at mini.c:9553 #1 0x0812bb0f in emit_state (cfg=0x8233a18, state=0x83a0cfc, goal=2) at mini.c:9567 #2 0x0812bb0f in emit_state (cfg=0x8233a18, state=0x83a0ccc, goal=2) at mini.c:9567 #3 0x0812bb0f in emit_state (cfg=0x8233a18, state=0x83a0c6c, goal=1) at mini.c:9567 #4 0x081494d6 in mini_method_compile (method=0x8298af4, opts=5335551, domain=0x21ed8, run_cctors=value optimized out, compile_aot=value optimized out, parts=0) at mini.c:9659 #5 0x0814aaf1 in mono_jit_compile_method (method=0x8298af4) at mini.c:10388 #6 0x0807dfba in mono_magic_trampoline (regs=0xbfd86960, code=0xb71d302c \203#65535;\b\213#1592;T\037\006, m=0x8298af4, tramp=0x0) at mini-trampolines.c:27 #7 0xb7f55032 in ?? () #8 0xbfd86960 in ?? () #9 0xb71d302c in ?? () #10 0x08298af4 in ?? () #11 0x in ?? () 0x0812bacd 9553if ((state-tree-ssa_op == MONO_SSA_STORE) (state-left-tree-opcode == OP_REGVAR)) { make[8]: *** [genxs.exe] Aborted make[8]: Leaving directory `/svn/mono/mcs/tools/genxs' make[7]: *** [do-all] Error 2 make[7]: Leaving directory `/svn/mono/mcs/tools/genxs' make[6]: *** [all-recursive] Error 1 make[6]: Leaving directory `/svn/mono/mcs/tools' make[5]: *** [all-recursive] Error 1 make[5]: Leaving directory `/svn/mono/mcs' make[4]: *** [profile-do--default--all] Error 2 make[4]: Leaving directory `/svn/mono/mcs' make[3]: *** [profiles-do--all] Error 2 make[3]: Leaving directory `/svn/mono/mcs' make[2]: *** [all-local] Errohttp://i-nz.net/r 2 make[2]: Leaving directory `/svn/mono/mono/runtime' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/svn/mono/mono' make: *** [all] Error 2 -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Compiling current svn?
On 10/9/06, Mads Bondo Dydensborg [EMAIL PROTECTED] wrote: Hi there I have a problem with compiling current svn: svn update then make clean and rebuild. Should fix it. -- Ivan N. Zlatev Web: http://www.i-nZ.net It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] GLib's GModule + libmono = segfault?
Hi, I am experiencing a strange problem here. I have a library A that g_module_opens (B). B embeds mono and does mono initialization. If I try to do g_module_close (B) it SEGFAULTS with the following stacktrace: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1234973792 (LWP 6406)] 0xb6e96934 in ?? () 0xb7f4f3a6 in _dl_catch_error () from /lib/ld-linux.so.2 0xb7327ee4 in dlclose_doit () from /lib/libdl.so.2 #0 0xb7f54093 in _dl_close () from /lib/ld-linux.so.2 #1 0xb7327ee4 in dlclose_doit () from /lib/libdl.so.2 #2 0xb7f4f3a6 in _dl_catch_error () from /lib/ld-linux.so.2 #3 0xb73282fc in _dlerror_run () from /lib/libdl.so.2 #4 0xb7327f1a in dlclose () from /lib/libdl.so.2 #5 0xb750022a in _g_module_close (handle=0xb7f5d6c4, is_unref=0) at gmodule-dl.c:133 #6 0xb750036e in g_module_close (module=0x810fe20) at gmodule.c:537 This happens both if libmono is dynamically or statically linked, but does *not* happen if I remove the mono part in B. Any thoughts on why is this happening? (Mono SVN HEAD) -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] [PATCH] BUG in TypeDescriptor.GetAttributes : Ignores overriden attributes
The current implementation of TypeDescriptor.GetAttributes ignores overriden attributes and returns the bottom most in the inheritance tree. The attached patch fixes that. I have also attached a test case so you can observe the wrong behaviour. The patch also does whitespace cleanup. Please review and commit. P.S: The fix is this and everything else is just the whitespace cleanup: === START === protected AttributeCollection GetAttributes (IComponent comp) { if (_attributes != null) return _attributes; - + bool cache = true; object[] ats = _infoType.GetCustomAttributes (true); Hashtable t = new Hashtable (); - foreach (Attribute at in ats) - t [at.TypeId] = at; - - if (comp != null comp.Site != null) + + // Filter the custom attributes, so that only the top + // level of the same type are left. + // + for (int i = ats.Length -1; i 0; i--) { + t [((Attribute) ats[i]).TypeId] = ats[i]; + } + + if (comp != null comp.Site != null) { ITypeDescriptorFilterService filter = (ITypeDescriptorFilterService) comp.Site.GetService (typeof(ITypeDescriptorFilterService)); cache = filter.FilterAttributes (comp, t); } === END === -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. Index: class/System/System.ComponentModel/TypeDescriptor.cs === --- class/System/System.ComponentModel/TypeDescriptor.cs (revision 64506) +++ class/System/System.ComponentModel/TypeDescriptor.cs (working copy) @@ -17,10 +17,10 @@ // distribute, sublicense, and/or sell copies of the Software, and to // permit persons to whom the Software is furnished to do so, subject to // the following conditions: -// +// // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. -// +// // THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND @@ -61,14 +61,14 @@ { string tn = designerBaseType.AssemblyQualifiedName; AttributeCollection col = GetAttributes (component); - + foreach (Attribute at in col) { DesignerAttribute dat = at as DesignerAttribute; if (dat != null tn == dat.DesignerBaseTypeName) { return (IDesigner) Activator.CreateInstance (GetTypeFromName (component, dat.DesignerTypeName)); } } - + return null; } @@ -193,7 +193,7 @@ if (noCustomTypeDesc == false component is ICustomTypeDescriptor) { return ((ICustomTypeDescriptor) component).GetConverter (); - } + } else { Type t = null; AttributeCollection atts = GetAttributes (component, false); @@ -201,7 +201,7 @@ if (tca != null tca.ConverterTypeName.Length 0) { t = GetTypeFromName (component as IComponent, tca.ConverterTypeName); } - + if (t != null) { ConstructorInfo ci = t.GetConstructor (new Type[] { typeof(Type) }); if (ci != null) @@ -220,7 +220,7 @@ lock (creatingDefaultConverters) { if (defaultConverters != null) return defaultConverters; - + defaultConverters = new Hashtable (); defaultConverters.Add (typeof (bool), typeof (BooleanConverter)); defaultConverters.Add (typeof (byte), typeof (ByteConverter)); @@ -248,20 +248,20 @@ return defaultConverters; } } - + public static TypeConverter GetConverter (Type type) { TypeConverterAttribute tca = null; Type t = null; object [] atts = type.GetCustomAttributes (typeof(TypeConverterAttribute), true); - + if (atts.Length 0) tca = (TypeConverterAttribute)atts[0]; - + if (tca != null) { t = GetTypeFromName (null, tca.ConverterTypeName); } - + if (t == null) { if (type.IsEnum) { // EnumConverter needs to know the enum type @@ -270,7 +270,7 @@ return new ArrayConverter (); } } - + if (t == null) t = FindConverterType (type); @@ -295,19 +295,19 @@ private static Type FindConverterType (Type type) { Type t = null; - + // Is there a default converter t = (Type) DefaultConverters [type]; if (t != null) return t; - + // Find default converter with a type this type is assignable to foreach (Type defType in DefaultConverters.Keys) { if (defType.IsInterface defType.IsAssignableFrom (type
Re: [Mono-dev] [PATCH] BUG in TypeDescriptor.GetAttributes : Ignores overriden attributes
Excuse me, made a typo in the previous patch. Please review this one (basically changed i 0 to i = 0) Cheers, -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. Index: class/System/System.ComponentModel/TypeDescriptor.cs === --- class/System/System.ComponentModel/TypeDescriptor.cs (revision 64506) +++ class/System/System.ComponentModel/TypeDescriptor.cs (working copy) @@ -17,10 +17,10 @@ // distribute, sublicense, and/or sell copies of the Software, and to // permit persons to whom the Software is furnished to do so, subject to // the following conditions: -// +// // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. -// +// // THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND @@ -61,14 +61,14 @@ { string tn = designerBaseType.AssemblyQualifiedName; AttributeCollection col = GetAttributes (component); - + foreach (Attribute at in col) { DesignerAttribute dat = at as DesignerAttribute; - if (dat != null tn == dat.DesignerBaseTypeName) { + if (dat != null tn == dat.DesignerBaseTypeName) { return (IDesigner) Activator.CreateInstance (GetTypeFromName (component, dat.DesignerTypeName)); } } - + return null; } @@ -193,7 +193,7 @@ if (noCustomTypeDesc == false component is ICustomTypeDescriptor) { return ((ICustomTypeDescriptor) component).GetConverter (); - } + } else { Type t = null; AttributeCollection atts = GetAttributes (component, false); @@ -201,7 +201,7 @@ if (tca != null tca.ConverterTypeName.Length 0) { t = GetTypeFromName (component as IComponent, tca.ConverterTypeName); } - + if (t != null) { ConstructorInfo ci = t.GetConstructor (new Type[] { typeof(Type) }); if (ci != null) @@ -220,7 +220,7 @@ lock (creatingDefaultConverters) { if (defaultConverters != null) return defaultConverters; - + defaultConverters = new Hashtable (); defaultConverters.Add (typeof (bool), typeof (BooleanConverter)); defaultConverters.Add (typeof (byte), typeof (ByteConverter)); @@ -248,20 +248,20 @@ return defaultConverters; } } - + public static TypeConverter GetConverter (Type type) { TypeConverterAttribute tca = null; Type t = null; object [] atts = type.GetCustomAttributes (typeof(TypeConverterAttribute), true); - + if (atts.Length 0) tca = (TypeConverterAttribute)atts[0]; - + if (tca != null) { t = GetTypeFromName (null, tca.ConverterTypeName); } - + if (t == null) { if (type.IsEnum) { // EnumConverter needs to know the enum type @@ -270,7 +270,7 @@ return new ArrayConverter (); } } - + if (t == null) t = FindConverterType (type); @@ -295,19 +295,19 @@ private static Type FindConverterType (Type type) { Type t = null; - + // Is there a default converter t = (Type) DefaultConverters [type]; if (t != null) return t; - + // Find default converter with a type this type is assignable to foreach (Type defType in DefaultConverters.Keys) { if (defType.IsInterface defType.IsAssignableFrom (type)) { return (Type) DefaultConverters [defType]; } } - + // Nothing found, try the same with our base type if (type.BaseType != null) return FindConverterType (type.BaseType); @@ -367,8 +367,8 @@ object [] atts = componentType.GetCustomAttributes (typeof(EditorAttribute), true); if (atts == null || atts.Length == 0) return null; - - + + foreach (EditorAttribute ea in atts) { t = GetTypeFromName (null, ea.EditorTypeName); @@ -566,7 +566,7 @@ } public static event RefreshEventHandler Refreshed; - + internal static ComponentInfo GetComponentInfo (IComponent com) { lock (componentTable) @@ -583,7 +583,7 @@ return ci; } } - + internal static TypeInfo GetTypeInfo (Type type) { lock (typeTable) @@ -596,7 +596,7 @@ return ci; } } - + static Type GetTypeFromName (IComponent component, string typeName) { if (component != null component.Site != null) { @@ -604,7 +604,7 @@ if (resver != null) return resver.GetType (typeName, true, false); } - + Type t = Type.GetType (typeName); if (t == null) throw new ArgumentException (Type ' + typeName + ' not found); return t; @@ -619,21 +619,21 @@ PropertyDescriptor _defaultProperty; bool _gotDefaultProperty; AttributeCollection _attributes; - + public Info (Type infoType) { _infoType = infoType; } - + public abstract AttributeCollection GetAttributes (); public abstract EventDescriptorCollection GetEvents (); public abstract
[Mono-dev] [Patch] 2 Bugs in ReflectorPropertyDescriptor: ignores Design-Time properties
This patch fixed the following 2 bugs. Please review and commit 1) The ReflectionPropretyDescriptor must be able to operate with non public properties. 2) The current implementation ignores the fact that the component can be in design mode. In design mode some of the properties (the design-time ones) are supposed to be redirected to the designer. The component which should be used to access the property is retrieved by using MemberDescriptor.GetInvokee (implemented in the patch). Updated the ReflectorPropertyDescriptor to use GetInvokee to decide which component should it use. P.S: Whitespace cleanup in the patch too. Cheers, -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. Index: class/System/System.ComponentModel/MemberDescriptor.cs === --- class/System/System.ComponentModel/MemberDescriptor.cs (revision 64506) +++ class/System/System.ComponentModel/MemberDescriptor.cs (working copy) @@ -4,6 +4,7 @@ // Author: // Miguel de Icaza ([EMAIL PROTECTED]) // Andreas Nahr ([EMAIL PROTECTED]) +// Ivan N. Zlatev (contact i-nZ.net) // // (C) Ximian, Inc. http://www.ximian.com // (C) 2003 Andreas Nahr @@ -17,10 +18,10 @@ // distribute, sublicense, and/or sell copies of the Software, and to // permit persons to whom the Software is furnished to do so, subject to // the following conditions: -// +// // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. -// +// // THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND @@ -34,18 +35,19 @@ using System.Collections; using System.Reflection; using System.Runtime.InteropServices; +using System.ComponentModel.Design; namespace System.ComponentModel { [ComVisible (true)] -public abstract class MemberDescriptor +public abstract class MemberDescriptor { private string name; private Attribute [] attrs; private AttributeCollection attrCollection; - + protected MemberDescriptor (string name, Attribute [] attrs) { this.name = name; @@ -69,15 +71,15 @@ attrs = reference.AttributeArray; } -protected virtual Attribute [] AttributeArray +protected virtual Attribute [] AttributeArray { -get +get { -if (attrs == null) +if (attrs == null) { ArrayList list = new ArrayList (); FillAttributes (list); - + ArrayList filtered = new ArrayList (); foreach (Attribute at in list) { bool found = false; @@ -88,11 +90,11 @@ } attrs = (Attribute[]) filtered.ToArray (typeof(Attribute)); } - + return attrs; } -set +set { attrs = value; } @@ -105,7 +107,7 @@ public virtual AttributeCollection Attributes { -get +get { if (attrCollection == null) attrCollection = CreateAttributeCollection (); @@ -117,18 +119,18 @@ { return new AttributeCollection (AttributeArray); } - -public virtual string Category + +public virtual string Category { -get +get { return ((CategoryAttribute) Attributes [typeof (CategoryAttribute)]).Category; } } -public virtual string Description +public virtual string Description { -get +get { foreach (Attribute attr in AttributeArray) { @@ -139,9 +141,9 @@ } } -public virtual bool DesignTimeOnly +public virtual bool DesignTimeOnly { -get +get { foreach (Attribute attr in AttributeArray) { @@ -153,25 +155,25 @@ } } -public virtual string DisplayName +public virtual string DisplayName { -get +get { return name; } } -public virtual string Name +public virtual string Name { -get +get { return name; } } -public virtual bool IsBrowsable +public virtual bool IsBrowsable { -get +get { foreach (Attribute attr in AttributeArray) { @@ -183,15 +185,15 @@ } } -protected virtual
Re: [Mono-dev] VMWare machine, monodevelop, and some thoughts
Both hands up for a GUI frontend for the debugger, not necessarily part of MD (I don't use MD and I don't want to be forced to use MD in order to debug something). -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] ComponentDesigner implementation patch
Hello! The attached ComponentDesigner.patch.tar.gz is a complete implementation of the 1.1 and 2.0 System.ComponentModel.Design.ComponentDesigner. I have successfully hosted components which use this implementation for their designer in Visual Studio.Net 2005. I am also reposting a few trivial patches all in the System.ComponentModel.* namespaces: * DesignerTransactionCloseEventArgs.diff, SelectionTypes_net_2_0.diff, ViewTechnology_Update.diff, ServiceContainer.diff. - update a few signatures and enums to .Net 2.0 * Container_and_Test.diff - Fixes incorrect behaviour, updates to .Net 2.0. Includes a test case. Please someone review these patches and apply them. P.S: I've posted on this list earlier this summer that I am working on some of the Design-Time stuff (System.ComponentModel(.Design.*)). I have completed the DesignSurface (http://msdn2.microsoft.com/en-us/library/system.componentmodel.design.designsurface.aspx) implementation and managed to load MS's WinForm designers in my own host. I am doing extensive testing - hosting MS's designers in my host, hosting my designers in their host, etc. I am hoping to get back to you soon with an extremly basic winforms designer :) ... and may be one day have a very cut-down version of SD running... ;) Cheers, -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. DesignerTransactionCloseEventArgs.diff Description: Binary data SelectionTypes_net_2_0.diff Description: Binary data ViewTechnology_Update.diff Description: Binary data ServiceContainer.diff Description: Binary data Container_and_Test.diff Description: Binary data ComponentDesigner.patch.tar.gz Description: GNU Zip compressed data ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] System.Net.Sockets.TcpListener 2.0 Updates
An updated version of the patch attached. Please review that instead of the previous one. On 7/26/06, tcmichals [EMAIL PROTECTED] wrote: When will this be added to TcpListener? Whenever someone reviews the patch and, if okay commits it... :| -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. TcpListener_Updates.diff Description: Binary data ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] We want to contribute
On 7/17/06, Andrés G. Aragoneses [ knocte ] [EMAIL PROTECTED] wrote: My personal opinion is that the best priority should be to finish the port of MonoDevelop to Windows. I think this goal would make Mono take off on many fields (nowadays, it is very difficult to convince people about using a multiplatform development tool whose own IDE is not multiplatform). What is the use case of that? Do you think Windows users will use MonoDevelop instead of Visual Studio or SharpDevelop? It would be better if one can integrate Mono related tools in already existing Windows tools (take Prj2Make as an example). My personal opinion is that the group should pick up a namespace and implement missing 2.0 classes or do some 1.1 classlib work. -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] diff files for TcpListener and UdpClent class of System.Net.Sockets(Net_2_0)
On Tue, 2006-07-04 at 11:43 +0530, Sridhar Kulkarni wrote: Hi, Find the attached diff files for TcpListner and UdpClient classes. Hey, Your TcpListener patch will break the build, because ExclusiveAddressUse is not implemented in Socket. Also in EndAcceptTcpClient you cast a Socket to TcpClient. And also - implementing ExclusiveAddressUse should Have effect on Stop(). It's my fault that I haven't noticed your patch on the list, but a few days later (Fri Jul 7 22:32:35 EDT 2006) I posted my updates to the TcpListener, which also update a few more tiny bits in TcpListener and TcpClinet. I've reattached the patch in here (revised version of the old one) if it is of any intereset to anyone. Cheers, -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. TcpListener_Updates.diff Description: Binary data ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Interop Callback Segmentation fault
It is a bug in mono indeed. I made a self-contained test and it worked perfectly. Then I thought that it may be due to the fact Banshee loads plugins/media engines dynamically (it is a xine backend for Banshee what I am doing) and reproduced the way of loading the assembly and executing the code, but again it worked. So at the moment I can tell it only SEGFAULTs in Banshee, but still the code I use for the test case and the banshee plugin is even the same assembly (I have the xine library in xine-sharp.dll). Could I file a bug with the Banshee plugin source code or? :s On 7/11/06, Zoltan Varga [EMAIL PROTECTED] wrote: Hi, This _might_ be a mono bug. Could you file a bug report and attach some kind of self-contained testcase (a xine dependency is ok) ? Zoltan On 7/11/06, Ivan N. Zlatev [EMAIL PROTECTED] wrote: Hey, I am on mono svn head and I get a segmentation fault when trying to use this code: === typedef void (*xine_event_listener_cb_t) (void *user_data, const xine_event_t *event); void xine_event_create_listener_thread (xine_event_queue_t *queue, xine_event_listener_cb_t callback, void *user_data); === [DllImport (libxine)] private static extern void xine_event_create_listener_thread (IntPtr eventQueue, XineEventHandler eventHandler, IntPtr data); public delegate void XineEventHandler (IntPtr data, IntPtr eventArgs); ... eventQueue = xine_event_new_queue (_stream); if (_eventQueue != IntPtr.Zero) { xine_event_create_listener_thread (_eventQueue, HandleEvent, IntPtr.Zero); } ... private void HandleEvent (IntPtr data, IntPtr eventArgs) { Console.WriteLine (Helllooo); } === This works when HandleEvent is static but else segfaults: (gdb) bt #0 0x08790f66 in ?? () #1 0xb4c72a8a in listener_loop (queue_gen=0x878d670) at events.c:209 #2 0xb7eda34b in start_thread () from /lib/libpthread.so.0 #3 0xb7e4465e in clone () from /lib/libc.so.6 (gdb) p mono_pmip (0x08790f66) Program received signal SIGSEGV, Segmentation fault. 0x0809603c in mono_jit_info_table_find (domain=0x0, addr=0x8790f66 \022) at domain.c:173 173 MonoJitInfoTable *table = domain-jit_info_table; Any ideas what am I doing wrong or if it is a mono bug? -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Interop Callback Segmentation fault
I forgot to mention that when loaded in MDB the code doesn't segfault (the banshee media engine (plugin) that is). Very odd. On 7/12/06, Ivan N. Zlatev [EMAIL PROTECTED] wrote: It is a bug in mono indeed. I made a self-contained test and it worked perfectly. Then I thought that it may be due to the fact Banshee loads plugins/media engines dynamically (it is a xine backend for Banshee what I am doing) and reproduced the way of loading the assembly and executing the code, but again it worked. So at the moment I can tell it only SEGFAULTs in Banshee, but still the code I use for the test case and the banshee plugin is even the same assembly (I have the xine library in xine-sharp.dll). Could I file a bug with the Banshee plugin source code or? :s ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Interop Callback Segmentation fault
Hey, I am on mono svn head and I get a segmentation fault when trying to use this code: === typedef void (*xine_event_listener_cb_t) (void *user_data, const xine_event_t *event); void xine_event_create_listener_thread (xine_event_queue_t *queue, xine_event_listener_cb_t callback, void *user_data); === [DllImport (libxine)] private static extern void xine_event_create_listener_thread (IntPtr eventQueue, XineEventHandler eventHandler, IntPtr data); public delegate void XineEventHandler (IntPtr data, IntPtr eventArgs); ... eventQueue = xine_event_new_queue (_stream); if (_eventQueue != IntPtr.Zero) { xine_event_create_listener_thread (_eventQueue, HandleEvent, IntPtr.Zero); } ... private void HandleEvent (IntPtr data, IntPtr eventArgs) { Console.WriteLine (Helllooo); } === This works when HandleEvent is static but else segfaults: (gdb) bt #0 0x08790f66 in ?? () #1 0xb4c72a8a in listener_loop (queue_gen=0x878d670) at events.c:209 #2 0xb7eda34b in start_thread () from /lib/libpthread.so.0 #3 0xb7e4465e in clone () from /lib/libc.so.6 (gdb) p mono_pmip (0x08790f66) Program received signal SIGSEGV, Segmentation fault. 0x0809603c in mono_jit_info_table_find (domain=0x0, addr=0x8790f66 \022) at domain.c:173 173 MonoJitInfoTable *table = domain-jit_info_table; Any ideas what am I doing wrong or if it is a mono bug? -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] [PATCH] System.Net.Sockets.TcpListener 2.0 Updates
The attached patch includes updates for the TcpListener class to .Net 2.0. Please someone review and commit. Cheers, -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. TcpListener_Updates.diff Description: Binary data ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] System.ComponentModel.Design.DesignerTransactionCloseEventArgs 2.0 Update
On Wed, 2006-06-28 at 12:09 -0400, Miguel de Icaza wrote: Hello Ivan, Thanks for the patches, as I mentioned before, am going to have to ask an external source to review the patches and tell us if we can use them. I will be able to get back to you in a week or so. Miguel. Hi Miguel, Okay thanks. I am sorry again for being impatient. Let me know if there is something. Cheers, -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] [PATCH] System.ComponentModel.Design.ServiceContainer
NET_2_0 Updates: Class signature + IDisposable implementation. Please review and someone commit. -- Ivan N. Zlatev Web: http://www.i-nZ.net GPG Key: http://files.i-nZ.net/i-nZ.asc It's all some kind of whacked out conspiracy. Index: class/System/System.ComponentModel.Design/ServiceContainer.cs === --- class/System/System.ComponentModel.Design/ServiceContainer.cs (revision 61911) +++ class/System/System.ComponentModel.Design/ServiceContainer.cs (working copy) @@ -4,10 +4,11 @@ // Authors: // Martin Willemoes Hansen ([EMAIL PROTECTED]) // Andreas Nahr ([EMAIL PROTECTED]) +// Ivan N. Zlatev (contact i-nZ.net) // // (C) 2003 Martin Willemoes Hansen // (C) 2003 Andreas Nahr -// +// (C) 2006 Ivan N. Zlatev // // Permission is hereby granted, free of charge, to any person obtaining @@ -30,16 +31,25 @@ // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // +using System; using System.Collections; namespace System.ComponentModel.Design { + +#if NET_2_0 + public class ServiceContainer : IServiceContainer, IServiceProvider, IDisposable +#else public sealed class ServiceContainer : IServiceContainer, IServiceProvider +#endif { private IServiceProvider parentProvider; private Hashtable services = new Hashtable (); - +#if NET_2_0 + private bool _disposed = false; +#endif + public ServiceContainer() : this (null) { @@ -122,5 +132,36 @@ } return result; } + +#if NET_2_0 + public void Dispose () + { + this.Dispose (true); + GC.SuppressFinalize(this); + } + + protected virtual void Dispose (bool disposing) + { + if (!_disposed) { +if (disposing) { + if (this.services != null) { + foreach (object obj in this.services) { + if (obj is IDisposable) { +((IDisposable) obj).Dispose (); + } + } + this.services = null; + } +} +_disposed = true; + } + } + + ~ServiceContainer () + { + Dispose (false); + } +#endif + } } ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Patch for Bug 76907
Hey, I don't know if this is the right place to post this, but this is a patch, which is supposed to fix bug 76907. Here it is... Greets, Ivan N. Zlatev Index: mcs/class/System.Drawing/System.Drawing/Graphics.cs === — mcs/class/System.Drawing/System.Drawing/Graphics.cs (revision 53896) +++ mcs/class/System.Drawing/System.Drawing/Graphics.cs (working copy) @@ -387,8 +387,10 @@ throw new ArgumentNullException (”points”); Status status; + int numberOfPoints = numberOfSegments + 1; + status = GDIPlus.GdipDrawCurve3 (nativeObject, pen.nativeObject, - points, points.Length, offset, + points, numberOfPoints, offset, numberOfSegments, 0.5f); GDIPlus.CheckStatus (status); } @@ -401,8 +403,10 @@ throw new ArgumentNullException (”points”); Status status; + int numberOfPoints = numberOfSegments + 1; + status = GDIPlus.GdipDrawCurve3I (nativeObject, pen.nativeObject, - points, points.Length, offset, + points, numberOfPoints, offset, numberOfSegments, tension); GDIPlus.CheckStatus (status); } @@ -416,8 +420,10 @@ throw new ArgumentNullException (”points”); Status status; + int numberOfPoints = numberOfSegments + 1; + status = GDIPlus.GdipDrawCurve3 (nativeObject, pen.nativeObject, - points, points.Length, offset, + points, numberOfPoints, offset, numberOfSegments, tension); GDIPlus.CheckStatus (status); } Index: mcs/class/System.Drawing/System.Drawing/Graphics.cs === --- mcs/class/System.Drawing/System.Drawing/Graphics.cs (revision 53896) +++ mcs/class/System.Drawing/System.Drawing/Graphics.cs (working copy) @@ -387,8 +387,10 @@ throw new ArgumentNullException (points); Status status; + int numberOfPoints = numberOfSegments + 1; + status = GDIPlus.GdipDrawCurve3 (nativeObject, pen.nativeObject, - points, points.Length, offset, + points, numberOfPoints, offset, numberOfSegments, 0.5f); GDIPlus.CheckStatus (status); } @@ -401,8 +403,10 @@ throw new ArgumentNullException (points); Status status; + int numberOfPoints = numberOfSegments + 1; + status = GDIPlus.GdipDrawCurve3I (nativeObject, pen.nativeObject, - points, points.Length, offset, + points, numberOfPoints, offset, numberOfSegments, tension); GDIPlus.CheckStatus (status); } @@ -416,8 +420,10 @@ throw new ArgumentNullException (points); Status status; + int numberOfPoints = numberOfSegments + 1; + status = GDIPlus.GdipDrawCurve3 (nativeObject, pen.nativeObject, - points, points.Length, offset, + points, numberOfPoints, offset, numberOfSegments, tension); GDIPlus.CheckStatus (status); } ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list