View Single Post
Old April 1, 2021, 05:17   #17
Join Date: Aug 2019
Posts: 329
backwardsEric is on a distinguished road
Originally Posted by Mike View Post
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
defaults delete
, 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
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
./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
backwardsEric is offline   Reply With Quote