Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Game Crash on Changing Seating Configuration
#1
Starting a game in 1960, purchased my fleet, changed seat configuration, attempted to save, and the game crashed.  In troubleshooting, I seem to have narrowed down the cause to changing the seat configuration on the Vickers Viscount 810.  Even a change as simple as converting the default all-first-class configuration to an all-economy one - even when nothing else (pitch, width, rows) is changed - causes the game to crash on any subsequent save, and causes the resulting save to crash the game when loading.

Following is the contents of my log file from the crash on saving:

Game time: 1/1/1960 12:00:00 AM
Version: Version 2.14 Patch J (Alpha)
1/2/2020: 3:09 AM System.NullReferenceException: Object reference not set to an instance of an object.
  at TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.Converters.AirlinerClassesConverter.<>c.<ConvertTo>b__7_0(FacilityOptionType o) in D:\OneDrive\bureaublad\TAP\TAP Code\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\Converters\AirlinerClassesConverter.cs:line 159
  at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
  at System.String.Join(String separator, IEnumerable`1 values)
  at TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.Converters.AirlinerClassesConverter.ConvertTo(ITypeDescriptorContext context, CultureInfo culture, Object value, Type destinationType) in D:\OneDrive\bureaublad\TAP\TAP Code\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\Converters\AirlinerClassesConverter.cs:line 159
  at System.ComponentModel.TypeConverter.ConvertTo(Object value, Type destinationType)
  at SQLiter.SQLiter.getPropertyValue(Object type, PropertyInfo property)
  at SQLiter.SQLiter.SaveAll[T](IEnumerable`1 data)
  at TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveHelpers.SaveGame(SaveFile save) in D:\OneDrive\bureaublad\TAP\TAP Code\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveHelpers.cs:line 376
  at TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveObject.saveGame(SaveFile savefile) in D:\OneDrive\bureaublad\TAP\TAP Code\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveObject.cs:line 244
  at TheAirlineProjectV2.Modules.GameSideMenu.ViewModels.GameSideMenuViewModel.MenuItemClicked(Object o) in D:\OneDrive\bureaublad\TAP\TAP Code\TheAirlineProjectV2.Modules.GameSideMenu\ViewModels\GameSideMenuViewModel.cs:line 224
  at Prism.Commands.DelegateCommand`1.Execute(T parameter)
  at Prism.Commands.DelegateCommand`1.Execute(Object parameter)
  at Prism.Commands.DelegateCommandBase.System.Windows.Input.ICommand.Execute(Object parameter)
  at MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(ICommandSource commandSource, Boolean userInitiated)
  at System.Windows.Documents.Hyperlink.OnClick()
  at System.Windows.Documents.Hyperlink.DispatchNavigation(Object sender)
  at System.Windows.Documents.Hyperlink.DoUserInitiatedNavigation(Object sender)
  at System.Windows.Documents.Hyperlink.OnMouseLeftButtonUp(Object sender, MouseButtonEventArgs e)
  at System.Windows.Documents.Hyperlink.OnMouseLeftButtonUp(MouseButtonEventArgs e)
  at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
  at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
  at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
  at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
  at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
  at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
  at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
  at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
  at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
  at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
  at System.Windows.ContentElement.RaiseTrustedEvent(RoutedEventArgs args)
  at System.Windows.Input.InputManager.ProcessStagingArea()
  at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
  at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
  at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
  at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
  at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
  at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
  at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
  at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
  at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
  at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
  at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
  at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
  at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
  at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
  at System.Windows.Application.RunDispatcher(Object ignore)
  at System.Windows.Application.RunInternal(Window window)
  at System.Windows.Application.Run(Window window)
  at System.Windows.Application.Run()
  at TheAirlineProjectV2.App.Main()

And here are the log contents when attempting to load the failed save file:

Game time: 1/1/0001 12:00:00 AM
Version: Version 2.14 Patch J (Alpha)
1/2/2020: 3:17 AM code = Error (1), message = System.Data.SQLite.SQLiteException (0x800007BF): SQL logic error
no such table: SubsidiaryAirline
  at System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
  at System.Data.SQLite.SQLiteCommand.BuildNextCommand()
  at System.Data.SQLite.SQLiteCommand.GetStatement(Int32 index)
  at System.Data.SQLite.SQLiteDataReader.NextResult()
  at System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
  at System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
  at System.Data.SQLite.SQLiteCommand.ExecuteReader()
  at SQLiter.SQLiter.GetTable[T]()
  at TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveHelpers.LoadGame(String filename) in D:\OneDrive\bureaublad\TAP\TAP Code\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveHelpers.cs:line 86
  at TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveObject.loadGame(String filename) in D:\OneDrive\bureaublad\TAP\TAP Code\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveObject.cs:line 239
  at TheAirlineProjectV2.Modules.MainMenu.ViewModels.MainMenuWindowViewModel.LoadGameClicked() in D:\OneDrive\bureaublad\TAP\TAP Code\TheAirlineProjectV2.Modules.MainMenu\ViewModels\MainMenuWindowViewModel.cs:line 851
  at Prism.Commands.DelegateCommand.Execute()
  at Prism.Commands.DelegateCommand.Execute(Object parameter)
  at Prism.Commands.DelegateCommandBase.System.Windows.Input.ICommand.Execute(Object parameter)
  at MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(ICommandSource commandSource, Boolean userInitiated)
  at System.Windows.Controls.Primitives.ButtonBase.OnClick()
  at System.Windows.Controls.Button.OnClick()
  at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
  at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
  at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
  at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
  at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
  at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
  at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
  at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
  at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
  at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
  at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
  at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
  at System.Windows.Input.InputManager.ProcessStagingArea()
  at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
  at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
  at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
  at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
  at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
  at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
  at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
  at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
  at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
  at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
  at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
  at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
  at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
  at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
  at System.Windows.Application.RunDispatcher(Object ignore)
  at System.Windows.Application.RunInternal(Window window)
  at System.Windows.Application.Run(Window window)
  at System.Windows.Application.Run()
  at TheAirlineProjectV2.App.Main()
#2
Thanks for reporting.

Does this happen on a completely empty game except for the Vickers Viscount 810?

stupid question seen the crash happened in on January 1st of the first year in your game.
#3
Can you please tell me where you changed the configuration of the airliner?

In the fleet window?:

-While selecting the fleet using the checkboxes on the left?

-or for a specific airliner by clicking on its tailnumber and changing the configuration there?


And then, did you change the class using the pencil icon, or by reducing the amount of first class rows to 0 with the arrows?


edit: Nevermind, I found the issue. It will be part of the next patch. Smile


Forum Jump:


Users browsing this thread: 1 Guest(s)