You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(editor): load spawn/house files on session restore
When restoring a session, the editor was only loading the OTBM map
but not the external spawn/house XML files. This caused spawns to be
empty in memory, and saving would overwrite the spawn file with an
empty <spawns/> element, losing all configured spawns.
Now LoadSessionFiles also reads the external spawn and house XML
files after loading the OTBM, matching the behavior of LoadMapFromPath.
Copy file name to clipboardExpand all lines: src/App/crash.log
+31Lines changed: 31 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -117,3 +117,34 @@
117
117
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args)
118
118
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, Action`1 lifetimeBuilder)
119
119
at AssetsAndMapEditor.App.Program.Main(String[] args) in /Users/brewertonsantos/dev/pokeorigins-tibia/assets-and-map-editor/src/App/Program.cs:line 25
120
+
[2026-04-08 10:39:14] UNHANDLED: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
121
+
at System.Collections.ObjectModel.Collection`1.System.Collections.IList.get_Item(Int32 index)
122
+
at Avalonia.Controls.Selection.SelectedItems`1.GetEnumerator()+MoveNext()
123
+
at System.Linq.Enumerable.<ToArray>g__EnumerableToArray|324_0[TSource](IEnumerable`1 source)
124
+
at Avalonia.Controls.Primitives.SelectingItemsControl.OnSelectionModelSelectionChanged(Object sender, SelectionModelSelectionChangedEventArgs e)
125
+
at Avalonia.Controls.Selection.SelectionModel`1.CommitOperation(Operation operation, Boolean raisePropertyChanged)
126
+
at Avalonia.Controls.Utils.CollectionChangedEventManager.Entry.<Avalonia.Utilities.IWeakEventSubscriber<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.OnEvent>g__Notify|6_0(INotifyCollectionChanged incc, NotifyCollectionChangedEventArgs args, WeakReference`1[] listeners)
127
+
at Avalonia.Utilities.WeakEvent`2.Subscription.OnEvent(Object sender, TEventArgs eventArgs)
128
+
at System.Collections.ObjectModel.Collection`1.Clear()
129
+
at AssetsAndMapEditor.App.ViewModels.MainWindowViewModel.LoadFromSession(SessionViewModel session) in /Users/brewertonsantos/dev/pokeorigins-tibia/assets-and-map-editor/src/App/ViewModels/MainWindowViewModel.cs:line 307
130
+
at AssetsAndMapEditor.App.ViewModels.MainWindowViewModel.SwitchToSession(SessionViewModel session) in /Users/brewertonsantos/dev/pokeorigins-tibia/assets-and-map-editor/src/App/ViewModels/MainWindowViewModel.cs:line 201
131
+
at AssetsAndMapEditor.App.MainWindow.OnSessionTabPressed(Object sender, PointerPressedEventArgs e) in /Users/brewertonsantos/dev/pokeorigins-tibia/assets-and-map-editor/src/App/MainWindow.axaml.cs:line 242
132
+
at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e)
133
+
at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e)
134
+
at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e)
135
+
at Avalonia.Input.MouseDevice.MouseDown(IMouseDevice device, UInt64 timestamp, IInputElement root, Point p, PointerPointProperties properties, KeyModifiers inputModifiers, IInputElement hitTest)
136
+
at Avalonia.Input.MouseDevice.ProcessRawEvent(RawPointerEventArgs e)
137
+
at Avalonia.Controls.TopLevel.<>c.<HandleInput>b__150_0(Object state)
138
+
at Avalonia.Threading.Dispatcher.Send(SendOrPostCallback action, Object arg, Nullable`1 priority)
139
+
at Avalonia.Native.TopLevelImpl.RawMouseEvent(AvnRawMouseEventType type, AvnPointerDeviceType deviceType, UInt64 timeStamp, AvnInputModifiers modifiers, AvnPoint point, AvnVector delta, Single pressure, Single xTilt, Single yTilt)
140
+
at Avalonia.Native.Interop.Impl.__MicroComIAvnTopLevelEventsVTable.RawMouseEvent(Void* this, AvnRawMouseEventType type, AvnPointerDeviceType deviceType, UInt64 timeStamp, AvnInputModifiers modifiers, AvnPoint point, AvnVector delta, Single pressure, Single xTilt, Single yTilt)
141
+
--- End of stack trace from previous location ---
142
+
at Avalonia.Native.DispatcherImpl.RunLoop(CancellationToken token)
143
+
at Avalonia.Native.DispatcherImpl.RunLoop(CancellationToken token)
144
+
at Avalonia.Threading.DispatcherFrame.Run(IControlledDispatcherImpl impl)
145
+
at Avalonia.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
146
+
at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken)
147
+
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.StartCore(String[] args)
148
+
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args)
149
+
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, Action`1 lifetimeBuilder)
150
+
at AssetsAndMapEditor.App.Program.Main(String[] args) in /Users/brewertonsantos/dev/pokeorigins-tibia/assets-and-map-editor/src/App/Program.cs:line 25
0 commit comments