Xygos 0.0.2 "Chuckie Egg" released

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Mike
    Rookie
    • Mar 2021
    • 21

    #16
    Mac build

    I've been unable to reproduce the crash on Linux, but I do now have a Mac build up that uses its own BUNDLE_IDENTIFIER and so shouldn't share any prefs with Angband. I'd appreciate it if someone could give that a try and see if it avoids the crash.

    Comment

    • backwardsEric
      Knight
      • Aug 2019
      • 527

      #17
      Originally posted by Mike
      I've been unable to reproduce the crash on Linux, but I do now have a Mac build up that uses its own BUNDLE_IDENTIFIER and so shouldn't share any prefs with Angband. I'd appreciate it if someone could give that a try and see if it avoids the crash.
      The change to the bundle identifier works as intended. The crash immediately after exiting the birth process (as before, segmentation fault in cave_monster_max() while displaying the monster list subwindow) still happens (wiping any previous ~/Documents/Xygos and deleting the Mac front end defaults with
      Code:
      defaults delete xygos.rephial.org
      , to simulate startup on a system where it hadn't been run before, did not help).

      Without any prior defaults, the Mac front end is always setting up default sizes and placements for Term-1 to Term-5. That behavior is in Angband as well. Those terms will open immediately after going from the splash screen to the birth process. Closing them all before leaving the birth process does not prevent the crash. Changing line 350 of src/ui-mon-list.c to
      Code:
      if (height < 1 || width < 1 || !cave)
      did let things proceed to the town, and I didn't encounter any problems after that.

      To reproduce the crash on Linux, this worked for me (using Debian Buster; compiled from the latest source after configuring
      Code:
      ./configure --with-no-install
      ; the X11 developer packages were installed so the X11 interface was enabled by default):
      1. Run ./xygos
      2. Create a character
      3. Once in town, exit with Ctrl-X
      4. Run ./xygos -mx11 -- -n4
      5. Once playing with the previous save, commit suicide with Q
      6. On the death screen, select the option to start a new game without exiting
      7. Going through the birth process works fine, but then crashes

      Comment

      • Nick
        Vanilla maintainer
        • Apr 2007
        • 9634

        #18
        Originally posted by backwardsEric
        Changing line 350 of src/ui-mon-list.c to
        Code:
        if (height < 1 || width < 1 || !cave)
        did let things proceed to the town, and I didn't encounter any problems after that.
        Weird. Why doesn't Angband crash there, then?
        One for the Dark Lord on his dark throne
        In the Land of Mordor where the Shadows lie.

        Comment

        • backwardsEric
          Knight
          • Aug 2019
          • 527

          #19
          Originally posted by Nick
          Weird. Why doesn't Angband crash there, then?
          From what I'm seeing, Angband does not have PR_MONLIST included in player->upkeep->redraw on that first call to redraw_stuff() while Xygos does. For Xygos, that flag is already set when event_signal(EVENT_ENTER_WORLD) is called. I didn't track down when it was set prior to that.

          Comment

          Working...
          😀
          😂
          🥰
          😘
          🤢
          😎
          😞
          😡
          👍
          👎