xxtbg / fseye

Automatically exported from code.google.com/p/fseye
Apache License 2.0
0 stars 0 forks source link

mono bug needs work-around: sending watch to PropertyGrid causes exception if first use of a plugin #45

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

On mono only (verified on OS X, mono 3.4.x):

1. In fresh FSI session with FsEye loaded, create a binding like [1;2;3]
2. Right-click the [1;2;3] binding in FsEye and choose to send it to the 
PropertyGrid plugin (must be use of a plugin)
3. FsEye generates an Exception in the FSI output originating from the 
PropertyGrid WinForms control

What is the expected output? What do you see instead?

No exception should occur, but we get the following:

System.ArgumentOutOfRangeException: Value '-1' must be greater than or equal to 
0.
Parameter name: LargeChange
  at System.Windows.Forms.ScrollBar.set_LargeChange (Int32 value) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.ScrollBar:set_LargeChange (int)
  at System.Windows.Forms.PropertyGridInternal.PropertyGridView.UpdateScrollBar () [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.PropertyGridInternal.PropertyGridView.UpdateView () [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.PropertyGridInternal.PropertyGridView.OnResize (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnSizeChanged (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height, Int32 clientWidth, Int32 clientHeight) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCoreInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCore (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBounds (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.set_Height (Int32 value) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:set_Height (int)
  at System.Windows.Forms.PropertyGrid+BorderHelperControl.OnSizeChanged (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height, Int32 clientWidth, Int32 clientHeight) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCoreInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCore (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:SetBoundsInternal (int,int,int,int,System.Windows.Forms.BoundsSpecified)
  at System.Windows.Forms.Layout.DefaultLayout.LayoutDockedChildren (System.Windows.Forms.Control parent, System.Windows.Forms.Control[] controls) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Layout.DefaultLayout.Layout (System.Object container, System.Windows.Forms.LayoutEventArgs args) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnLayout (System.Windows.Forms.LayoutEventArgs levent) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.ScrollableControl.OnLayout (System.Windows.Forms.LayoutEventArgs levent) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.ContainerControl.OnLayout (System.Windows.Forms.LayoutEventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.PerformLayout (System.Windows.Forms.Control affectedControl, System.String affectedProperty) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnResizeInternal (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnResize (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.PropertyGrid.OnResize (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnSizeChanged (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height, Int32 clientWidth, Int32 clientHeight) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCoreInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCore (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:SetBoundsInternal (int,int,int,int,System.Windows.Forms.BoundsSpecified)
  at System.Windows.Forms.Layout.DefaultLayout.LayoutDockedChildren (System.Windows.Forms.Control parent, System.Windows.Forms.Control[] controls) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Layout.DefaultLayout.Layout (System.Object container, System.Windows.Forms.LayoutEventArgs args) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnLayout (System.Windows.Forms.LayoutEventArgs levent) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.ScrollableControl.OnLayout (System.Windows.Forms.LayoutEventArgs levent) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.PerformLayout (System.Windows.Forms.Control affectedControl, System.String affectedProperty) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnResizeInternal (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnResize (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Panel.OnResize (System.EventArgs eventargs) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnSizeChanged (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height, Int32 clientWidth, Int32 clientHeight) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCoreInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCore (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:SetBoundsInternal (int,int,int,int,System.Windows.Forms.BoundsSpecified)
  at System.Windows.Forms.Layout.DefaultLayout.LayoutDockedChildren (System.Windows.Forms.Control parent, System.Windows.Forms.Control[] controls) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Layout.DefaultLayout.Layout (System.Object container, System.Windows.Forms.LayoutEventArgs args) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnLayout (System.Windows.Forms.LayoutEventArgs levent) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.ScrollableControl.OnLayout (System.Windows.Forms.LayoutEventArgs levent) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.PerformLayout (System.Windows.Forms.Control affectedControl, System.String affectedProperty) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnResizeInternal (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnResize (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Panel.OnResize (System.EventArgs eventargs) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.OnSizeChanged (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height, Int32 clientWidth, Int32 clientHeight) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.UpdateBounds (Int32 x, Int32 y, Int32 width, Int32 height) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCoreInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsCore (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.TabPage.SetBoundsCore (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBoundsInternal (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.SetBounds (Int32 x, Int32 y, Int32 width, Int32 height, BoundsSpecified specified) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.set_Bounds (Rectangle value) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:set_Bounds (System.Drawing.Rectangle)
  at System.Windows.Forms.TabControl.ResizeTabPages () [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.TabControl.Redraw () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.TabControl:Redraw ()
  at System.Windows.Forms.TabControl+ControlCollection.Add (System.Windows.Forms.Control value) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.TabControl+TabPageCollection.Add (System.Windows.Forms.TabPage value) [0x00000] in <filename unknown>:0 
  at <StartupCode$FsEye>.$PluginTabControl+-ctor@57-35.Invoke (Swensen.FsEye.ManagedWatchViewer mwv) [0x00000] in <filename unknown>:0 
  at Microsoft.FSharp.Control.CommonExtensions+SubscribeToObservable@2028[Swensen.FsEye.ManagedWatchViewer].System-IObserver`1-OnNext (Swensen.FsEye.ManagedWatchViewer value) [0x00000] in <filename unknown>:0 
  at Microsoft.FSharp.Core.CompilerServices.RuntimeHelpers+h@740[Swensen.FsEye.ManagedWatchViewer].Invoke (System.Object _arg1, Swensen.FsEye.ManagedWatchViewer args) [0x00000] in <filename unknown>:0 
  at Microsoft.FSharp.Core.FSharpFunc`2[System.Object,Swensen.FsEye.ManagedWatchViewer].InvokeFast[Unit] (Microsoft.FSharp.Core.FSharpFunc`2 func, System.Object arg1, Swensen.FsEye.ManagedWatchViewer arg2) [0x00000] in <filename unknown>:0 
  at <StartupCode$FsEye>.$PluginTabControl+-ctor@57-34.Invoke (System.Object sender, Swensen.FsEye.ManagedWatchViewer args) [0x00000] in <filename unknown>:0 
  at Microsoft.FSharp.Control.FSharpEvent`1[Swensen.FsEye.ManagedWatchViewer].Trigger (Swensen.FsEye.ManagedWatchViewer arg) [0x00000] in <filename unknown>:0 
  at Swensen.FsEye.PluginManager.SendTo (Swensen.FsEye.ManagedPlugin managedPlugin, System.String label, System.Object value, System.Type valueTy) [0x00000] in <filename unknown>:0 
  at <StartupCode$FsEye>.$WatchTreeView+clo@140-28.Invoke (System.EventArgs _arg4) [0x00000] in <filename unknown>:0 
  at Microsoft.FSharp.Control.CommonExtensions+SubscribeToObservable@2028[System.EventArgs].System-IObserver`1-OnNext (System.EventArgs value) [0x00000] in <filename unknown>:0 
  at Microsoft.FSharp.Core.CompilerServices.RuntimeHelpers+h@740[System.EventArgs].Invoke (System.Object _arg1, System.EventArgs args) [0x00000] in <filename unknown>:0 
  at Microsoft.FSharp.Core.FSharpFunc`2[System.Object,System.EventArgs].InvokeFast[Unit] (Microsoft.FSharp.Core.FSharpFunc`2 func, System.Object arg1, System.EventArgs arg2) [0x00000] in <filename unknown>:0 
  at <StartupCode$FsEye>.$WatchTreeView+clo@140-27.Invoke (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.MenuItem.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.MenuItem.PerformClick () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.MenuItem:PerformClick ()
  at System.Windows.Forms.MenuTracker.OnMouseUp (System.Windows.Forms.MouseEventArgs args) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.ProcessActiveTracker (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.ScrollableControl.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.ContainerControl.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Form.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.NativeWindow.WndProc (IntPtr hWnd, Msg msg, IntPtr wParam, IntPtr lParam) [0x00000] in <filename unknown>:0 
Stopped due to error
Microsoft.FSharp.Compiler.ErrorLogger+StopProcessing: Exception of type 
'Microsoft.FSharp.Compiler.ErrorLogger+StopProcessing' was thrown.
  at Microsoft.FSharp.Compiler.Interactive.Shell+ErrorLoggerThatStopsOnFirstError.AbortOnError () [0x00000] in <filename unknown>:0 
  at Microsoft.FSharp.Compiler.Interactive.Shell+threadException@2457-1[System.Exception].Invoke (Microsoft.FSharp.Core.Unit unitVar0) [0x00000] in <filename unknown>:0 

Please use labels and text to provide additional information.

Seems related to a supposedly fixed WinForms bug / regression in mono: 
https://bugzilla.novell.com/show_bug.cgi?id=643366

Original issue reported on code.google.com by stephen....@gmail.com on 23 Jun 2014 at 12:42

GoogleCodeExporter commented 9 years ago

Original comment by stephen....@gmail.com on 23 Jun 2014 at 12:43