Coder Social home page Coder Social logo

[Crash]: about openttd HOT 6 CLOSED

N-ISOGE avatar N-ISOGE commented on May 18, 2024
[Crash]:

from openttd.

Comments (6)

glx22 avatar glx22 commented on May 18, 2024

First callstack:

>	[Cadre en ligne] openttd.exe!StringParameters::GetTypeAtOffset(unsigned int) Ligne 155	C++
 	openttd.exe!FormatString(char * buff, const char * str_arg, StringParameters * args, const char * last, unsigned int case_index, bool game_script, bool dry_run) Ligne 967	C++
 	openttd.exe!GetStringWithArgs(char * buffr, unsigned int string, StringParameters * args, const char * last, unsigned int case_index, bool game_script) Ligne 270	C++
 	openttd.exe!FormatString(char * buff, const char * str_arg, StringParameters * args, const char * last, unsigned int case_index, bool game_script, bool dry_run) Ligne 1060	C++
 	openttd.exe!FormatString(char * buff, const char * str_arg, StringParameters * args, const char * last, unsigned int case_index, bool game_script, bool dry_run) Ligne 830	C++
 	openttd.exe!GetStringWithArgs(char * buffr, unsigned int string, StringParameters * args, const char * last, unsigned int case_index, bool game_script) Ligne 270	C++
 	openttd.exe!GetString(char * buffr, unsigned int string, const char * last) Ligne 277	C++
 	openttd.exe!GetStringHeight(unsigned int str, int maxw) Ligne 731	C++
 	openttd.exe!GetStringMultiLineBoundingBox(unsigned int str, const Dimension & suggestion) Ligne 757	C++
 	openttd.exe!NewsWindow::UpdateWidgetSize(int widget, Dimension * size, const Dimension & padding, Dimension * fill, Dimension * resize) Ligne 416	C++
 	openttd.exe!NWidgetLeaf::SetupSmallestSize(Window * w, bool init_array) Ligne 2830	C++
 	openttd.exe!NWidgetVertical::SetupSmallestSize(Window * w, bool init_array) Ligne 1669	C++
 	openttd.exe!NWidgetBackground::SetupSmallestSize(Window * w, bool init_array) Ligne 2150	C++
 	openttd.exe!NWidgetVertical::SetupSmallestSize(Window * w, bool init_array) Ligne 1669	C++
 	openttd.exe!Window::InitializeData(int window_number) Ligne 1431	C++
 	openttd.exe!Window::FinishInitNested(int window_number) Ligne 1794	C++
 	openttd.exe!NewsWindow::NewsWindow(WindowDesc * desc, const NewsItem * ni) Ligne 311	C++
 	openttd.exe!ShowNewspaper(const NewsItem * ni) Ligne 621	C++
 	openttd.exe!MoveToNextNewsItem() Ligne 741	C++
 	openttd.exe!StateGameLoop() Ligne 1429	C++
 	openttd.exe!GameLoop() Ligne 1513	C++
 	openttd.exe!VideoDriver::GameLoop() Ligne 38	C++
 	openttd.exe!VideoDriver::GameThread() Ligne 47	C++
 	openttd.exe!StartNewThread::__l3::<lambda>(const char * name, void(*)(VideoDriver *) && F, VideoDriver * && <A_0>) Ligne 65	C++
 	[Code externe]	
 	openttd.exe!thread_start<unsigned int (__cdecl*)(void *),1>(void * const parameter) Ligne 97	C++
 	[Code externe]	

Second callstack;

>	[Cadre en ligne] openttd.exe!StringParameters::GetTypeAtOffset(unsigned int) Ligne 155	C++
 	openttd.exe!FormatString(char * buff, const char * str_arg, StringParameters * args, const char * last, unsigned int case_index, bool game_script, bool dry_run) Ligne 967	C++
 	openttd.exe!GetStringWithArgs(char * buffr, unsigned int string, StringParameters * args, const char * last, unsigned int case_index, bool game_script) Ligne 270	C++
 	openttd.exe!FormatString(char * buff, const char * str_arg, StringParameters * args, const char * last, unsigned int case_index, bool game_script, bool dry_run) Ligne 1060	C++
 	openttd.exe!FormatString(char * buff, const char * str_arg, StringParameters * args, const char * last, unsigned int case_index, bool game_script, bool dry_run) Ligne 830	C++
 	openttd.exe!GetStringWithArgs(char * buffr, unsigned int string, StringParameters * args, const char * last, unsigned int case_index, bool game_script) Ligne 270	C++
 	openttd.exe!GetString(char * buffr, unsigned int string, const char * last) Ligne 277	C++
 	openttd.exe!GetStringHeight(unsigned int str, int maxw) Ligne 731	C++
 	openttd.exe!GetStringMultiLineBoundingBox(unsigned int str, const Dimension & suggestion) Ligne 757	C++
 	openttd.exe!NewsWindow::UpdateWidgetSize(int widget, Dimension * size, const Dimension & padding, Dimension * fill, Dimension * resize) Ligne 416	C++
 	openttd.exe!NWidgetLeaf::SetupSmallestSize(Window * w, bool init_array) Ligne 2830	C++
 	openttd.exe!NWidgetVertical::SetupSmallestSize(Window * w, bool init_array) Ligne 1669	C++
 	openttd.exe!NWidgetBackground::SetupSmallestSize(Window * w, bool init_array) Ligne 2150	C++
 	openttd.exe!NWidgetVertical::SetupSmallestSize(Window * w, bool init_array) Ligne 1669	C++
 	openttd.exe!Window::InitializeData(int window_number) Ligne 1431	C++
 	openttd.exe!Window::FinishInitNested(int window_number) Ligne 1794	C++
 	openttd.exe!NewsWindow::NewsWindow(WindowDesc * desc, const NewsItem * ni) Ligne 311	C++
 	openttd.exe!ShowNewspaper(const NewsItem * ni) Ligne 621	C++
 	openttd.exe!MoveToNextNewsItem() Ligne 741	C++
 	openttd.exe!StateGameLoop() Ligne 1429	C++
 	openttd.exe!GameLoop() Ligne 1513	C++
 	openttd.exe!VideoDriver::GameLoop() Ligne 38	C++
 	openttd.exe!VideoDriver::GameThread() Ligne 47	C++
 	openttd.exe!StartNewThread::__l3::<lambda>(const char * name, void(*)(VideoDriver *) && F, VideoDriver * && <A_0>) Ligne 65	C++
 	[Code externe]	
 	openttd.exe!thread_start<unsigned int (__cdecl*)(void *),1>(void * const parameter) Ligne 97	C++
 	[Code externe]	

from openttd.

LordAro avatar LordAro commented on May 18, 2024

#11297 perhaps?

Or #11521

from openttd.

glx22 avatar glx22 commented on May 18, 2024

Well it's trying to get bounding box for string 716 in a news window.
this->type is nullptr (and not catched by the disabled assert).
But string code in 13.4 is not the same as master.

from openttd.

glx22 avatar glx22 commented on May 18, 2024

Loaded the save in master

 	openttd.exe!common_assert_to_message_box<wchar_t>(const wchar_t * const expression, const wchar_t * const file_name, const unsigned int line_number, void * const return_address) Ligne 388	C++
 	openttd.exe!common_assert<wchar_t>(const wchar_t * const expression, const wchar_t * const file_name, const unsigned int line_number, void * const return_address) Ligne 424	C++
 	openttd.exe!_wassert(const wchar_t * expression, const wchar_t * file_name, unsigned int line_number) Ligne 444	C++
>	openttd.exe!StringParameters::GetTypeAtOffset(unsigned __int64 offset) Ligne 144	C++
 	openttd.exe!FormatString(StringBuilder & builder, const char * str_arg, StringParameters & args, unsigned int case_index, bool game_script, bool dry_run) Ligne 1027	C++
 	openttd.exe!GetStringWithArgs(StringBuilder & builder, unsigned int string, StringParameters & args, unsigned int case_index, bool game_script) Ligne 319	C++
 	openttd.exe!FormatString(StringBuilder & builder, const char * str_arg, StringParameters & args, unsigned int case_index, bool game_script, bool dry_run) Ligne 1123	C++
 	openttd.exe!FormatString(StringBuilder & builder, const char * str_arg, StringParameters & args, unsigned int case_index, bool game_script, bool dry_run) Ligne 898	C++
 	openttd.exe!GetStringWithArgs(StringBuilder & builder, unsigned int string, StringParameters & args, unsigned int case_index, bool game_script) Ligne 319	C++
 	openttd.exe!GetStringWithArgs(unsigned int string, StringParameters & args) Ligne 345	C++
 	openttd.exe!GetString(unsigned int string) Ligne 331	C++
 	openttd.exe!GetStringHeight(unsigned int str, int maxw) Ligne 718	C++
 	openttd.exe!GetStringMultiLineBoundingBox(unsigned int str, const Dimension & suggestion) Ligne 741	C++
 	openttd.exe!NewsWindow::UpdateWidgetSize(int widget, Dimension * size, const Dimension & padding, Dimension * fill, Dimension * resize) Ligne 413	C++
 	openttd.exe!NWidgetLeaf::SetupSmallestSize(Window * w) Ligne 2867	C++
 	openttd.exe!NWidgetVertical::SetupSmallestSize(Window * w) Ligne 1703	C++
 	openttd.exe!NWidgetBackground::SetupSmallestSize(Window * w) Ligne 2197	C++
 	openttd.exe!NWidgetVertical::SetupSmallestSize(Window * w) Ligne 1703	C++
 	openttd.exe!Window::ReInit(int rx, int ry, bool reposition) Ligne 965	C++
 	openttd.exe!ReInitWindow(Window * w, bool zoom_changed) Ligne 3292	C++
 	openttd.exe!ReInitAllWindows(bool zoom_changed) Ligne 3309	C++
 	openttd.exe!GameOptionsWindow::OnDropdownSelect(int widget, int index) Ligne 670	C++
 	openttd.exe!DropdownWindow::OnMouseLoop() Ligne 270	C++
 	openttd.exe!DecreaseWindowCounters() Ligne 1851	C++
 	openttd.exe!<lambda_16bc36d75df9d39d2efe737b7e5211c6>::operator()<unsigned int>(unsigned int __formal) Ligne 3015	C++
 	[Code externe]	
 	openttd.exe!IntervalTimer<TimerWindow>::Elapsed(std::chrono::duration<__int64,std::ratio<1,1000>> delta) Ligne 35	C++
 	openttd.exe!TimerManager<TimerWindow>::Elapsed(std::chrono::duration<__int64,std::ratio<1,1000>> delta) Ligne 59	C++
 	openttd.exe!UpdateWindows() Ligne 3053	C++
 	openttd.exe!VideoDriver::Tick() Ligne 154	C++
 	openttd.exe!VideoDriver_Win32Base::MainLoop() Ligne 894	C++
 	openttd.exe!openttd_main(int argc, char * * argv) Ligne 819	C++
 	openttd.exe!WinMain(HINSTANCE__ * __formal, HINSTANCE__ * __formal, char * __formal, int __formal) Ligne 82	C++
 	[Code externe]	

and many dbg: [misc] Trying to read invalid string parameter.
In english the string shows:
image

from openttd.

glx22 avatar glx22 commented on May 18, 2024

Retested with more recent master, no crashes.

BTW I checked the autoreplace setup, and the message causing the crash in 13.4 is issued because you are trying to replace refitted Darwin 300 with non refittable [KAS] Boeing 747-400
image
image
Stop this replacing and it should be fine in 13.4.

from openttd.

TrueBrain avatar TrueBrain commented on May 18, 2024

I Hope the above response helps you out!

from openttd.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.