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>[email protected] (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>[email protected] (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>[email protected] (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>[email protected] (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