Hi, I get this exception on a label with autosize set to true and updating text a lot. Actually text changing was being Control.Invoked from a different thread. I guess it'll be difficult to create a simple testcase for this one, but anyway it's not critical, I solved setting autosize off.
This is the trace in case you want to investigate (first sight I'd say it is not related to the thread invoke() X11 Error encountered: Error: RenderBadPicture (invalid Picture parameter) Request: 153 (26) Resource ID: 0x3A01234 Serial: 34807 Hwnd: <null> Control: <null> at System.Environment.get_StackTrace() in /home/dave/mono-src/mcs/class/corlib/System/Environment.cs:line 203 at System.Windows.Forms.XplatUIX11.HandleError(IntPtr display, XErrorEvent ByRef error_event) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs:line 1857 at System.Windows.Forms.XplatUIX11.HandleError(IntPtr , XErrorEvent ByRef ) at System.Windows.Forms.XplatUIX11.XGetWMNormalHints(IntPtr , IntPtr , XSizeHints ByRef , IntPtr ByRef ) at System.Windows.Forms.XplatUIX11.XGetWMNormalHints(IntPtr , IntPtr , XSizeHints ByRef , IntPtr ByRef ) at System.Windows.Forms.XplatUIX11.SetWindowMinMax(IntPtr handle, Rectangle maximized, Size min, Size max, System.Windows.Forms.CreateParams cp) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs:line 5278 at System.Windows.Forms.XplatUIX11.SetWindowMinMax(IntPtr handle, Rectangle maximized, Size min, Size max) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs:line 5262 at System.Windows.Forms.XplatUIX11.SetWindowPos(IntPtr handle, Int32 x, Int32 y, Int32 width, Int32 height) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs:line 5360 at System.Windows.Forms.XplatUI.SetWindowPos(IntPtr handle, Int32 x, Int32 y, Int32 width, Int32 height) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUI.cs:line 1034 at System.Windows.Forms.Control.SetBoundsCore(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Control.cs:line 4689 at System.Windows.Forms.Label.SetBoundsCore(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Label.cs:line 701 at System.Windows.Forms.Control.SetBounds(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Control.cs:line 4155 at System.Windows.Forms.Label.CalcAutoSize() in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Label.cs:line 732 at System.Windows.Forms.Label.OnTextChanged(System.EventArgs e) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Label.cs:line 678 at System.Windows.Forms.Control.set_Text(System.String value) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Control.cs:line 3182 at Codice.I3.I3Label.set_Text(System.String value) at Codice.CM.Client.Gui.ProgressForm.set_CurrentFile(System.String value) at Codice.CM.Client.Gui.BackgroundOperationManager.SetProgressElement(System.String name) at Codice.Client.BaseCommands.UndoCheckoutCmdImpl.DoUndoCheckout(System.String[] ByRef paths, IProgressNotifier progressNotifier) at Codice.Client.BaseCommands.UndoCheckoutCmdImpl.UndoCheckout(System.String[] paths, IProgressNotifier progressNotifier) at Codice.Client.BaseCommands.BaseCommandsImpl.UndoCheckout(System.String[] paths, IProgressNotifier progressNotifier) at Codice.CM.Client.Gui.GuiItem.Uncheckout(Codice.CM.Client.Gui.GuiObject[] selectedObjects, System.String nothing) at System.Reflection.MonoMethod.InternalInvoke(System.Object , System.Object[] ) at System.Reflection.MonoMethod.InternalInvoke(System.Object , System.Object[] ) at System.Reflection.MonoMethod.Invoke(System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) in /home/dave/mono-src/mcs/class/corlib/System.ReflectionX11 Error encountered: Error: RenderBadPicture (invalid Picture parameter) Request: 153 (26) Resource ID: 0x3A01234 Serial: 34807 Hwnd: <null> Control: <null> at System.Environment.get_StackTrace() in /home/dave/mono-src/mcs/class/corlib/System/Environment.cs:line 203 at System.Windows.Forms.XplatUIX11.HandleError(IntPtr display, XErrorEvent ByRef error_event) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs:line 1857 at System.Windows.Forms.XplatUIX11.HandleError(IntPtr , XErrorEvent ByRef ) at System.Windows.Forms.XplatUIX11.XGetWMNormalHints(IntPtr , IntPtr , XSizeHints ByRef , IntPtr ByRef ) at System.Windows.Forms.XplatUIX11.XGetWMNormalHints(IntPtr , IntPtr , XSizeHints ByRef , IntPtr ByRef ) at System.Windows.Forms.XplatUIX11.SetWindowMinMax(IntPtr handle, Rectangle maximized, Size min, Size max, System.Windows.Forms.CreateParams cp) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs:line 5278 at System.Windows.Forms.XplatUIX11.SetWindowMinMax(IntPtr handle, Rectangle maximized, Size min, Size max) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs:line 5262 at System.Windows.Forms.XplatUIX11.SetWindowPos(IntPtr handle, Int32 x, Int32 y, Int32 width, Int32 height) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs:line 5360 at System.Windows.Forms.XplatUI.SetWindowPos(IntPtr handle, Int32 x, Int32 y, Int32 width, Int32 height) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUI.cs:line 1034 at System.Windows.Forms.Control.SetBoundsCore(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Control.cs:line 4689 at System.Windows.Forms.Label.SetBoundsCore(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Label.cs:line 701 at System.Windows.Forms.Control.SetBounds(Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Control.cs:line 4155 at System.Windows.Forms.Label.CalcAutoSize() in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Label.cs:line 732 at System.Windows.Forms.Label.OnTextChanged(System.EventArgs e) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Label.cs:line 678 at System.Windows.Forms.Control.set_Text(System.String value) in /home/dave/mono-src/mcs/class/Managed.Windows.Forms/System.Windows.Forms/Control.cs:line 3182 at Codice.I3.I3Label.set_Text(System.String value) at Codice.CM.Client.Gui.ProgressForm.set_CurrentFile(System.String value) at Codice.CM.Client.Gui.BackgroundOperationManager.SetProgressElement(System.String name) at Codice.Client.BaseCommands.UndoCheckoutCmdImpl.DoUndoCheckout(System.String[] ByRef paths, IProgressNotifier progressNotifier) at Codice.Client.BaseCommands.UndoCheckoutCmdImpl.UndoCheckout(System.String[] paths, IProgressNotifier progressNotifier) at Codice.Client.BaseCommands.BaseCommandsImpl.UndoCheckout(System.String[] paths, IProgressNotifier progressNotifier) at Codice.CM.Client.Gui.GuiItem.Uncheckout(Codice.CM.Client.Gui.GuiObject[] selectedObjects, System.String nothing) at System.Reflection.MonoMethod.InternalInvoke(System.Object , System.Object[] ) at System.Reflection.MonoMethod.InternalInvoke(System.Object , System.Object[] ) at System.Reflection.MonoMethod.Invoke(System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) in /home/dave/mono-src/mcs/class/corlib/System.Reflection/MonoMethod.cs:line 149 at System.Reflection.MethodBase.Invoke(System.Object obj, System.Object[] parameters) in /home/dave/mono-src/mcs/class/corlib/System.Reflection/MethodBase.cs:line 90 at System.Delegate.DynamicInvokeImpl(System.Object[] args) in /home/dave/mono-src/mcs/class/corlib/System/Delegate.cs:line 398 at System.MulticastDelegate.DynamicInvokeImpl(System.Object[] args) in /home/dave/mono-src/mcs/class/corlib/System/MulticastDelegate.cs:line 71 at System.Delegate.DynamicInvoke(System.Object[] args) in /home/dave/mono-src/mcs/class/corlib/System/Delegate.cs:line 370 at Codice.CM.Client.Gui.BackgroundOperationManager.ThreadProc() /MonoMethod.cs:line 149 at System.Reflection.MethodBase.Invoke(System.Object obj, System.Object[] parameters) in /home/dave/mono-src/mcs/class/corlib/System.Reflection/MethodBase.cs:line 90 at System.Delegate.DynamicInvokeImpl(System.Object[] args) in /home/dave/mono-src/mcs/class/corlib/System/Delegate.cs:line 398 at System.MulticastDelegate.DynamicInvokeImpl(System.Object[] args) in /home/dave/mono-src/mcs/class/corlib/System/MulticastDelegate.cs:line 71 at System.Delegate.DynamicInvoke(System.Object[] args) in /home/dave/mono-src/mcs/class/corlib/System/Delegate.cs:line 370 at Codice.CM.Client.Gui.BackgroundOperationManager.ThreadProc() _______________________________________________ Mono-winforms-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-winforms-list
