The International Simutrans Forum

 

Author Topic: [BUG] The game crashes as soon as rotate the map and advance the time  (Read 188 times)

0 Members and 1 Guest are viewing this topic.

Offline Ranran

  • Devotee
  • *
  • Posts: 1219
  • Languages: ja
Reproduction method:
(1) Open demo.sve.
(2) Rotate the map.
(3) Fast forward.

Rotating it twice will almost certainly cause a crash.

Offline ceeac

  • Devotee
  • *
  • Posts: 203
Re: [BUG] The game crashes as soon as rotate the map and advance the time
« Reply #1 on: September 30, 2020, 03:49:10 PM »
For me, the crash occurs every time when rotating the map.
Backtace:
Code: [Select]
=================================================================
==59760==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000009 (pc 0x000000547c65 bp 0x7ffd265471b0 sp 0x7ffd26547190 T0)
==59760==The signal is caused by a READ memory access.
==59760==Hint: address points to the zero page.
    #0 0x547c65 in planquadrat_t::get_haltlist_count() const /home/ceeac/Projects/code/simutrans-ex/bauer/../descriptor/../display/../simplan.h:247:37
    #1 0x11bb063 in haltestelle_t::get_destination_halts_of_ware(ware_t&, vector_tpl<quickstone_tpl<haltestelle_t> >&) const /home/ceeac/Projects/code/simutrans-ex/simhalt.cc:2044:38
    #2 0x11b50e4 in haltestelle_t::find_route(ware_t&, unsigned int) const /home/ceeac/Projects/code/simutrans-ex/simhalt.cc:2254:2
    #3 0x11a9b20 in haltestelle_t::reroute_goods(unsigned char) /home/ceeac/Projects/code/simutrans-ex/simhalt.cc:1542:7
    #4 0x11854c7 in haltestelle_t::step() /home/ceeac/Projects/code/simutrans-ex/simhalt.cc:1270:3
    #5 0x1184ec2 in haltestelle_t::step_all() /home/ceeac/Projects/code/simutrans-ex/simhalt.cc:95:15
    #6 0x13770ad in karte_t::step() /home/ceeac/Projects/code/simutrans-ex/simworld.cc:5887:2
    #7 0x13b2b79 in karte_t::interactive(unsigned int) /home/ceeac/Projects/code/simutrans-ex/simworld.cc:10975:6
    #8 0x1229092 in simu_main(int, char**) /home/ceeac/Projects/code/simutrans-ex/simmain.cc:1396:9
    #9 0x13d6a7b in sysmain(int, char**) /home/ceeac/Projects/code/simutrans-ex/sys/simsys.cc:830:9
    #10 0x15722b1 in main /home/ceeac/Projects/code/simutrans-ex/sys/simsys_s2.cc:793:9
    #11 0x7f94eeb230b2 in __libc_start_main /build/glibc-ZN95T4/glibc-2.31/csu/../csu/libc-start.c:308:16
    #12 0x4329ed in _start (/media/ceeac/Projects/code/simutrans-ex/build/default/simutrans-extended+0x4329ed)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /home/ceeac/Projects/code/simutrans-ex/bauer/../descriptor/../display/../simplan.h:247:37 in planquadrat_t::get_haltlist_count() const
==59760==ABORTING

According to my investigations the target position of a good (ware_t::get_zielpos()) is either not rotated or rotated twice in some cases, resulting in an invalid target position. However, I have not yet found the actual source of the error.

Offline jamespetts

  • Simutrans-Extended project coordinator
  • Moderator
  • *
  • Posts: 20274
  • Cake baker
    • Bridgewater-Brunel
  • Languages: EN
Re: [BUG] The game crashes as soon as rotate the map and advance the time
« Reply #2 on: October 02, 2020, 07:53:53 PM »
Thank you for your report and for narrowing down the cause of this. I believe that I have now fixed this; I should be grateful if you could re-test with the next nightly build.

Offline Ranran

  • Devotee
  • *
  • Posts: 1219
  • Languages: ja
Thank you for fixing it.
Posting was delayed, but I think this bug has been fixed.