icsharpcode / AvaloniaILSpy

Avalonia-based .NET Decompiler (port of ILSpy)
1.55k stars 173 forks source link

Crash during drag drop #88

Open kant2002 opened 2 years ago

kant2002 commented 2 years ago

I drag some netmodule in the UI and receive this exception.

Sorry, we crashed
System.NullReferenceException: Object reference not set to an instance of an object.
   at ICSharpCode.TreeView.SharpTreeView.GetNodeAndIndex(SharpTreeViewItem item, DropPlace place, SharpTreeNode& node, Int32& index) in /home/kant/d/github/AvaloniaILSpy/SharpTreeView/SharpTreeView.cs:line 608
   at ICSharpCode.TreeView.SharpTreeView.BuildDropTargets(SharpTreeViewItem item, DragEventArgs e) in /home/kant/d/github/AvaloniaILSpy/SharpTreeView/SharpTreeView.cs:line 518
   at ICSharpCode.TreeView.SharpTreeView.GetDropTarget(SharpTreeViewItem item, DragEventArgs e) in /home/kant/d/github/AvaloniaILSpy/SharpTreeView/SharpTreeView.cs:line 506
   at ICSharpCode.TreeView.SharpTreeView.HandleDragOver(SharpTreeViewItem item, DragEventArgs e) in /home/kant/d/github/AvaloniaILSpy/SharpTreeView/SharpTreeView.cs:line 471
   at ICSharpCode.TreeView.SharpTreeView.HandleDragEnter(SharpTreeViewItem item, DragEventArgs e) in /home/kant/d/github/AvaloniaILSpy/SharpTreeView/SharpTreeView.cs:line 459
   at ICSharpCode.TreeView.SharpTreeViewItem.OnDragEnter(DragEventArgs e) in /home/kant/d/github/AvaloniaILSpy/SharpTreeView/SharpTreeViewItem.cs:line 113
   at ICSharpCode.TreeView.SharpTreeViewItem.<>c.<.cctor>b__0_0(SharpTreeViewItem x, DragEventArgs e) in /home/kant/d/github/AvaloniaILSpy/SharpTreeView/SharpTreeViewItem.cs:line 18
   at Avalonia.Interactivity.RoutedEvent.<>c__DisplayClass23_0.<AddClassHandler>b__0(ValueTuple`2 args) in /_/src/Avalonia.Interactivity/RoutedEvent.cs:line 94
   at System.Reactive.AnonymousObserver`1.OnNextCore(T value) in /_/Rx.NET/Source/src/System.Reactive/AnonymousObserver.cs:line 67
   at System.Reactive.ObserverBase`1.OnNext(T value) in /_/Rx.NET/Source/src/System.Reactive/ObserverBase.cs:line 36
   at System.Reactive.Subjects.Subject`1.OnNext(T value) in /_/Rx.NET/Source/src/System.Reactive/Subjects/Subject.cs:line 145
   at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in /_/src/Avalonia.Interactivity/EventRoute.cs:line 148
   at Avalonia.Interactivity.EventRoute.RaiseEvent(IInteractive source, RoutedEventArgs e) in /_/src/Avalonia.Interactivity/EventRoute.cs:line 79
   at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in /_/src/Avalonia.Interactivity/Interactive.cs:line 123
   at Avalonia.Input.DragDropDevice.DragOver(IInputRoot inputRoot, Point point, IDataObject data, DragDropEffects effects, KeyModifiers modifiers) in /_/src/Avalonia.Input/DragDropDevice.cs:line 64
   at Avalonia.Input.DragDropDevice.ProcessRawEvent(RawDragEvent e) in /_/src/Avalonia.Input/DragDropDevice.cs:line 100
   at Avalonia.Input.InputManager.ProcessInput(RawInputEventArgs e) in /_/src/Avalonia.Input/InputManager.cs:line 37
   at Avalonia.Platform.InProcessDragSource.RaiseEventAndUpdateCursor(RawDragEventType type, IInputRoot root, Point pt, RawInputModifiers modifiers) in /_/src/Avalonia.Controls/Platform/InProcessDragSource.cs:line 69
   at Avalonia.Platform.InProcessDragSource.ProcessMouseEvents(RawPointerEventArgs e)
   at System.Reactive.AnonymousSafeObserver`1.OnNext(T value) in /_/Rx.NET/Source/src/System.Reactive/AnonymousSafeObserver.cs:line 54
   at System.Reactive.Subjects.Subject`1.OnNext(T value) in /_/Rx.NET/Source/src/System.Reactive/Subjects/Subject.cs:line 145
   at Avalonia.Input.InputManager.ProcessInput(RawInputEventArgs e) in /_/src/Avalonia.Input/InputManager.cs:line 37
   at Avalonia.X11.X11Window.<ScheduleInput>b__121_0() in /_/src/Avalonia.X11/X11Window.cs:line 740
   at Avalonia.Threading.JobRunner.RunJobs(Nullable`1 priority) in /_/src/Avalonia.Base/Threading/JobRunner.cs:line 37
   at Avalonia.X11.X11PlatformThreading.HandleX11(CancellationToken cancellationToken) in /_/src/Avalonia.X11/X11PlatformThreading.cs:line 169
   at Avalonia.X11.X11PlatformThreading.RunLoop(CancellationToken cancellationToken) in /_/src/Avalonia.X11/X11PlatformThreading.cs:line 245
   at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in /_/src/Avalonia.Base/Threading/Dispatcher.cs:line 61
   at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 126
   at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 175
   at ICSharpCode.ILSpy.Program.Main(String[] args) in /home/kant/d/github/AvaloniaILSpy/ILSpy/Program.cs:line 22