Welcome, Guest. Please login or register.
March 28, 2024, 01:10:54 pm

Pages: [1]
  Print  
Author Topic: Linux bugs: Crash (segmentation fault), slow cursor in fullscreen  (Read 27559 times)
mjau
little robot
*
Posts: 4


« on: October 21, 2009, 01:55:03 am »

The Linux version just crashed while playing 5-in-a-row (I expect this is Adobe's fault, but figured I'd report it here anyway). Hadn't saved, so I have to start over from the beginning now. Auto-save would've been nice..

Also, fullscreen mode is unplayable since the cursor slows down to a pixel per frame with custom cursors, eg when stretching the robot or using objects (toggling hardware acceleration has no effect on this). Seems like the event handler is using an if where it should be using while or something. Windowed mode works fine.

Other than that, love the game Smiley
« Last Edit: October 21, 2009, 02:00:55 am by mjau » Logged
popsUlfr
Global Moderator
black cap brotherhood boss
*****
Gender: Male
Posts: 270


Houndeye


« Reply #1 on: October 21, 2009, 07:32:16 am »

The Linux version just crashed while playing 5-in-a-row (I expect this is Adobe's fault, but figured I'd report it here anyway). Hadn't saved, so I have to start over from the beginning now. Auto-save would've been nice..

Well there's sort of Auto-Save, you can resume the game from where you left last time. On the main menu screen you should have a "Resume Game", if that's not the case have a look at this thread.
Logged
mjau
little robot
*
Posts: 4


« Reply #2 on: October 21, 2009, 07:18:09 pm »

Well there's sort of Auto-Save, you can resume the game from where you left last time. On the main menu screen you should have a "Resume Game", if that's not the case have a look at this thread.

I did try resume, but it put me back at the very beginning of the game (after the intro). I tested it again just now, going to the second screen and quitting normally, and it starts me from there on resume now. I didn't change anything from before, so I guess the crash prevented autosave from working .. if it only saves on normal exit, that doesn't work so well when it crashes.
Logged
popsUlfr
Global Moderator
black cap brotherhood boss
*****
Gender: Male
Posts: 270


Houndeye


« Reply #3 on: October 21, 2009, 09:09:56 pm »

Not sure but you might check out if "Machinarium.sol" has some special permissions, if you can't resume the game after a crash then I would logically track the cause down to the point where the app is writing to disk.
Logged
mjau
little robot
*
Posts: 4


« Reply #4 on: October 21, 2009, 10:55:42 pm »

What I meant is that it seems the game only autosaves when you exit the game normally. I confirmed this by going to the third screen and killing the window, and sure enough the autosave didn't get updated. Closing the window normally does update the autosave, so the save system itself works fine. Saving manually and then killing the window also updates the save, so it's just autosave that's affected by this. I'll just save manually from now on to get around it, but it's still an issue Tongue

To be clear: When the game crashes, the code that saves the autosave is never reached, so the autosave isn't updated. You can probably fix it by saving the autosave every time you enter a new screen in stead of only on game exit.
« Last Edit: October 21, 2009, 11:00:20 pm by mjau » Logged
popsUlfr
Global Moderator
black cap brotherhood boss
*****
Gender: Male
Posts: 270


Houndeye


« Reply #5 on: October 22, 2009, 09:23:42 am »

Did you check your logs to see what happened when it crashed? I'm using a 64bit Linux and had no issues at all. There must be a conflict somewhere.
Logged
mjau
little robot
*
Posts: 4


« Reply #6 on: October 24, 2009, 12:24:34 am »

I don't see a crash log anywhere..  (If you mean /var/log stuff, didn't think to check it.)

Anyway, my guess it's just Linux Flash being Linux Flash. The browser plugin isn't exactly renowned for its stability either, and I noticed YouTube has the same cursor slowness problem in fullscreen sometimes, etc. If you're not having any problems with it, count yourself lucky Tongue.  Flash on Linux has all kinds of issues, but Adobe doesn't really seem to care, so there's not really much to do about it. Maybe they'd be more willing to listen to you guys, I don't know.

Anyways, I think I'll just get the Windows version and see if that works in Wine. Luckily the links still work.
Logged
Oldes
citizen robot
**
Posts: 16



« Reply #7 on: October 25, 2009, 10:23:09 pm »

Can you check if you have HD acceleration turned off? The HD acceleration in Flash is causing just a problems, at least if you want to do something else than look at video in the fullscreen or to do some fancy pseudo 3D menu.

There is automatic save and resume except the first 3 or 4 levels. We have to store all the game states manually and for each state you must put the animations in to correct positions on resume... and in the beginning the game structure (animations and other staff) was not set yet.. the game was made 'on the fly'. There was not much time to go back and write all the needed logic for these first levels later, unfortunately.
Logged
rold5
little robot
*
Posts: 2


« Reply #8 on: October 27, 2009, 01:28:54 am »

Hi -- also thanks for linux .... however--- I'm having repeated, but intermittent crashes .... I think this is an adobe player problem, but I'm out of ideas to try...

I set the ulimit -s up to 32768 and that seems to make the program last a little longer before it goes poof!

I've also captured the following stack from the core dump...
Quote
(gdb) bt
#0  0xb7648afb in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
#1  0xb7649215 in g_slice_alloc0 () from /usr/lib/libglib-2.0.so.0
#2  0xb76d84f8 in g_type_create_instance () from /usr/lib/libgobject-2.0.so.0
#3  0xb76be085 in ?? () from /usr/lib/libgobject-2.0.so.0
#4  0x0a2bb450 in ?? ()
#5  0xb5f83de4 in ?? ()
#6  0xa7300048 in ?? ()
#7  0xb76e9678 in ?? () from /usr/lib/libgobject-2.0.so.0
#8  0x0a340e10 in ?? ()
#9  0xb5f83de4 in ?? ()
#10 0xb5f83e18 in ?? ()
#11 0xb76c079f in ?? () from /usr/lib/libgobject-2.0.so.0
#12 0x0a297ec8 in ?? ()
#13 0xb5f83de4 in ?? ()
#14 0x00330013 in ?? ()
#15 0x00ff0048 in ?? ()
#16 0x00460025 in ?? ()
#17 0xb77b511a in ?? () from /usr/lib/libgdk_pixbuf-2.0.so.0
#18 0x0a297ec8 in ?? ()
#19 0xb7648a04 in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
#20 0xb76be8b6 in g_object_newv () from /usr/lib/libgobject-2.0.so.0
#21 0xb76bf4ba in g_object_new_valist () from /usr/lib/libgobject-2.0.so.0
#22 0xb76bf60e in g_object_new () from /usr/lib/libgobject-2.0.so.0
#23 0xb77a6ea2 in gdk_pixbuf_new_from_data () from /usr/lib/libgdk_pixbuf-2.0.so.0
#24 0xb77a4f35 in gdk_pixbuf_new () from /usr/lib/libgdk_pixbuf-2.0.so.0
#25 0x08067be4 in ?? ()
#26 0x0806370e in ?? ()
#27 0x0816618c in ?? ()
#28 0x081929ec in ?? ()
#29 0x08072cdf in ?? ()
#30 0xb7dd9f3b in start_thread () from /lib/libpthread.so.0
#31 0xb73f5bee in clone () from /lib/libc.so.6
(gdb)

While this is not reproducible "at will", all I have to do is play a level or two & it'll crash ... I can collect more information or try a few debugging things if someone could give me some hints on what to try.

This is a fully patched 32-bit debian lenny system ... intel q6700 cpu kernel 2.6.26-2-686, 2Gb memory... no known hardware problems.

I see similar (but not verified identical) problems on another debian lenny system, but an intel P4 processor.

Trying the game under the standalone developer flash player also crashes similarly.

Any ideas/help would be much appreciated.

(Note: sorry - but I thought I had HD acceleration off .... I retried ... here's a new stack dump... the HD off didn't change things much, I'm afraid)

Quote
(gdb) bt
#0  0xb770dafb in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
#1  0xb770e215 in g_slice_alloc0 () from /usr/lib/libglib-2.0.so.0
#2  0xb779d4f8 in g_type_create_instance () from /usr/lib/libgobject-2.0.so.0
#3  0xb7783085 in ?? () from /usr/lib/libgobject-2.0.so.0
#4  0x094d5450 in ?? ()
#5  0xbffcc514 in ?? ()
#6  0xb752b198 in ?? () from /lib/libc.so.6
#7  0xb77ae678 in ?? () from /usr/lib/libgobject-2.0.so.0
#8  0x09559a10 in ?? ()
#9  0xbffcc514 in ?? ()
#10 0xbffcc548 in ?? ()
#11 0xb778579f in ?? () from /usr/lib/libgobject-2.0.so.0
#12 0x094b1ec8 in ?? ()
#13 0xbffcc514 in ?? ()
#14 0x00000048 in ?? ()
#15 0x00000120 in ?? ()
#16 0x00000001 in ?? ()
#17 0xb787a11a in ?? () from /usr/lib/libgdk_pixbuf-2.0.so.0
#18 0x094b1ec8 in ?? ()
#19 0xb770da04 in g_slice_alloc () from /usr/lib/libglib-2.0.so.0
#20 0xb77838b6 in g_object_newv () from /usr/lib/libgobject-2.0.so.0
#21 0xb77844ba in g_object_new_valist () from /usr/lib/libgobject-2.0.so.0
#22 0xb778460e in g_object_new () from /usr/lib/libgobject-2.0.so.0
#23 0xb786bea2 in gdk_pixbuf_new_from_data () from /usr/lib/libgdk_pixbuf-2.0.so.0
#24 0xb7869f35 in gdk_pixbuf_new () from /usr/lib/libgdk_pixbuf-2.0.so.0
#25 0x08067be4 in ?? ()
#26 0x0806370e in ?? ()
#27 0x0816618c in ?? ()
#28 0x0815d9ae in ?? ()
#29 0x08189c52 in ?? ()
#30 0x08190407 in ?? ()
#31 0x08190541 in ?? ()
#32 0x08325a9b in ?? ()
#33 0x083266a0 in ?? ()
#34 0x08326a75 in ?? ()
#35 0x08325448 in ?? ()
#36 0x08326ae4 in ?? ()
#37 0x08325448 in ?? ()
#38 0x08326ae4 in ?? ()
#39 0x08325448 in ?? ()
#40 0x08326ae4 in ?? ()
#41 0x08325448 in ?? ()
#42 0x08326ae4 in ?? ()
#43 0x08325448 in ?? ()
#44 0x08326ae4 in ?? ()
#45 0x08325448 in ?? ()
#46 0x08299755 in ?? ()
#47 0x0829bf6b in ?? ()
#48 0x083a0efa in ?? ()
#49 0x083a6aa5 in ?? ()
#50 0x083a6cb2 in ?? ()
#51 0x082556f8 in ?? ()
#52 0x0824d81d in ?? ()
#53 0x0825527e in ?? ()
#54 0x083b21f3 in ?? ()
---Type <return> to continue, or q <return> to quit---
#55 0x084e33d9 in ?? ()
#56 0x083b2ea2 in ?? ()
#57 0x080504b0 in ?? ()
#58 0x080547ce in ?? ()
#59 0xb7a73816 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#60 0x094c8060 in ?? ()
#61 0x0955ca38 in ?? ()
#62 0xb6200020 in ?? ()
#63 0xb77ae678 in ?? () from /usr/lib/libgobject-2.0.so.0
#64 0x094f87a8 in ?? ()
#65 0x094f2920 in ?? ()
#66 0xbffcff78 in ?? ()
#67 0xb777d90b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0

Adding a little more... here's a 'tail' of an 'strace' of the failing thread:

Quote
futex(0xb6187040, FUTEX_WAIT_PRIVATE, 256365, NULL) = 0
futex(0xb618706c, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0xb6187040, FUTEX_WAIT_PRIVATE, 256367, NULL) = 0
futex(0xb618706c, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0xb6187040, FUTEX_WAIT_PRIVATE, 256369, NULL) = 0
futex(0xb618706c, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0xb6187040, FUTEX_WAIT_PRIVATE, 256371, NULL) = 0
futex(0xb618706c, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0xb6187040, FUTEX_WAIT_PRIVATE, 256373, NULL) = 0
futex(0xb618706c, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0xb6187040, FUTEX_WAIT_PRIVATE, 256375, NULL) = 0
futex(0xb618706c, FUTEX_WAKE_PRIVATE, 1) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
« Last Edit: October 27, 2009, 03:23:33 am by rold5 » Logged
Jouan
little robot
*
Posts: 2


« Reply #9 on: October 31, 2009, 05:38:16 pm »

I have the same issues...
Every few levels, the game crashes.
The game is unplayable in fullscreen too.
Logged
rold5
little robot
*
Posts: 2


« Reply #10 on: October 31, 2009, 08:12:45 pm »

I have the same issues...
Every few levels, the game crashes.
The game is unplayable in fullscreen too.

A few suggestions to try:

1) Get out of HD acceleration mode and into windowed mode .... worked a lot better for me that way
2) You migh try this:
Code:
$ cd {wherever Machinarium is installed}
$ G_SLICE=always-malloc ./Machinarium

So far... that's worked a LOT better for me.... --- I'd love to know if it's just a temporary fix for me here...

(Reference: http://ultrahigh.org/page/2/)


Logged
confluence
citizen robot
**
Posts: 8


« Reply #11 on: November 15, 2009, 08:07:12 pm »

G_SLICE=always-malloc helped me too. I found this thread when I started experiencing intermittent segmentation faults; I didn't get any more of them after I tried this.

Of course I also had to disable fullscreen.

I was able to complete the game without any further trouble.  I did experience some annoying flickering of layers. This may have been a problem with my graphics card or a lack of memory -- the game ran without flickering on a similar laptop model with a lot more memory.
Logged
Pages: [1]
  Print  
 
Jump to: