From Bugzilla Helper: User-Agent: Mozilla/5.0 Galeon/1.2.6 (X11; Linux i686; U;) Gecko/20020913 Description of problem: When playing gnibbles, with the 'levels in random order' option selected, gnibbles will occasionally exit unexpectedly attempting to load a new level. The message on the console is: Ack! Couldn't load level file /usr/share/gnibbles/level000.gnl It's reproducable consistently when playing many, many games. The levels are in random order, you know :) --C Version-Release number of selected component (if applicable): gnome-games-1.4.0.1-5 How reproducible: Sometimes Steps to Reproduce: 1. Start Gnibbles 2. Choose the levels in random order option 3. Play a couple hundred games Actual Results: Game exits unexpectedly. Expected Results: A new level should be loaded.
Hmm, is this an excuse to spend an entire day playing gnibbles? ;-)
Created attachment 88794 [details] Test patch to get rid of level 000 This patch is untested as I haven't figured much out about rpm yet, but it seems to be the only place where current_level could be set to 0.
- tmp = rand () % MAXLEVEL; + tmp = rand () % MAXLEVEL + 1; This should be + tmp = rand () % (MAXLEVEL - 1) + 1; Otherwise you remove 0, and add MAXLEVEL
MAXLEVEL is defined as 26 in the sources I have, and there is a level for it. Other places in the source it does rand() % MAXLEVEL + 1, validly. It looks like valid levels are 1-MAXLEVEL, inclusive.
Looking further, this bug seems to be a dup of bug 52900 at bugzilla.gnome.org. Same trivial patch was submitted as fix by someone else, seems to be fixed now upstream.
Thanks for looking into this. We should have the fix in the next release, then.