On Sun, Jun 23, 2013 at 06:33:41PM -0400, Brian Callahan wrote:
> Hi ports --
>
> Attached is a patch to update both games/solarus/zsdx and
> games/solarus/zsxd to their latest version, 1.6 (please apply from
> the ports/games/solarus directory).
>
> 1.6 is considered a major release for both games, and the first
> official releases to fully support the Solarus 1.0.x engine.
>
> This update changes how the games are packaged. Instead of me taking
> the time to build/host it myself (I had to do this before since the
> games were not official releases), move to pulling the game sources
> directly from the Solarus project and building it yourself. I have
> been working with upstream, and will make it even simpler to install
> the games in the future, but for now this should do.
>
> This change has also been spurred on by recent problems with my
> shell provider, who have been kindly hosting distfiles for some of
> my ports for quite some time. But being down for 3 days in the last
> week or so isn't a good sign.
>
> OK?
With this update, I'm getting errors starting games using the
provided wrapper scripts:
$ zsxd
Solarus 1.0.1
Opening quest 'zsxd'
Fatal: No quest was found in the directory 'zsxd'. To specify your quest's path,
run: solarus path/to/quest
Abort trap (core dumped)
$ cat /usr/local/bin/zsdx
#!/bin/sh
solarus /usr/local/share/solarus/zsdx zsdx
The game needs to be started like this:
$ solarus /usr/local/share/solarus/zsxd
Solarus 1.0.1
Opening quest '/usr/local/share/solarus/zsxd'
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
The wrapper scripts work fine with the current in-tree version of the port.
The following problems also existed before this update, so they're not
regressions and should not prevent this update from being committed.
But I thought I'd mention them anyway.
The solarus engine core dumps a lot, often when exiting.
Not a surprise for a game that is freshly ported to OpenBSD.
We should fix these crashes up and send patches upstream.
Windowed mode works fine, but trying to switch to fullscreen mode
crashes the X server on my machine.
$ xrandr
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 1366 x 1366
LVDS connected 1366x768+0+0 (normal left inverted right x axis y axis) 256mm x
144mm
1366x768 60.0*+
1280x720 59.9
1152x768 59.8
1024x768 59.9
800x600 59.9
640x480 59.4
HDMI-0 disconnected (normal left inverted right x axis y axis)
VGA-0 disconnected (normal left inverted right x axis y axis)
(gdb) run
Starting program: /usr/local/bin/solarus /usr/local/share/solarus/zsdx
Solarus 1.0.1
Opening quest '/usr/local/share/solarus/zsdx'
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
^[[CXIO: fatal IO error 35 (Resource temporarily unavailable) on X server
":0.0"
after 160 requests (160 known processed) with 2 events remaining.
Program received signal SIGSEGV, Segmentation fault.
0x00000a32b4708390 in ?? ()
(gdb) bt
#0 0x00000a32b4708390 in ?? ()
#1 0x00000a32b148a147 in __cxa_finalize (dso=0x0)
at /usr/src/lib/libc/stdlib/atexit.c:147
#2 0x00000a32b147352a in exit (status=1) at /usr/src/lib/libc/stdlib/exit.c:57
#3 0x00000a32b85bad53 in _XDefaultIOError ()
from /usr/X11R6/lib/libX11.so.15.2
#4 0x00000a32b85badce in _XIOError () from /usr/X11R6/lib/libX11.so.15.2
#5 0x00000a32b85b9270 in _XReply () from /usr/X11R6/lib/libX11.so.15.2
#6 0x00000a32b0edace6 in XRRSetScreenConfigAndRate ()
from /usr/X11R6/lib/libXrandr.so.6.2
#7 0x00000a32b0edae04 in XRRSetScreenConfig ()
from /usr/X11R6/lib/libXrandr.so.6.2
#8 0x00000a32ab9e328b in X11_ResizeFullScreen ()
from /usr/local/lib/libSDL.so.8.0
#9 0x00000a32ab9e4b5f in X11_EnterFullScreen ()
from /usr/local/lib/libSDL.so.8.0
#10 0x00000a32ab9e7b64 in X11_SetVideoMode () from /usr/local/lib/libSDL.so.8.0
#11 0x00000a32ab9d7985 in SDL_SetVideoMode () from /usr/local/lib/libSDL.so.8.0
#12 0x00000a30a9795eeb in VideoManager::set_video_mode ()
from /usr/local/bin/solarus
#13 0x00000a30a97fe6b6 in LuaContext::video_api_set_mode ()
from /usr/local/bin/solarus
---Type <return> to continue, or q <return> to quit---
I'm not sure yet what video mode it is trying to switch to, and I don't
know why it ends up bringing down all of X. Note that this is happening
with a new and barely supported radeon card, no accellerated X.
cpu0: AMD E-450 APU with Radeon(tm) HD Graphics, 1647.46 MHz
vga1 at pci0 dev 1 function 0 "ATI Radeon HD 6320" rev 0x00
I haven't yet had time to investigate further but will try to find time
to fix this.