Bug 212920 - Crash when loading level 2 (briefcase)
Crash when loading level 2 (briefcase)
Product: Fedora
Classification: Fedora
Component: fillets-ng (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Matthias Saou
Fedora Extras Quality Assurance
Depends On:
Blocks: FE7Target
  Show dependency treegraph
Reported: 2006-10-29 23:08 EST by Wart
Modified: 2007-11-30 17:11 EST (History)
2 users (show)

See Also:
Fixed In Version: 0.7.1-2
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-11-13 13:12:40 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Fixes table iterations (1.99 KB, patch)
2006-10-31 17:02 EST, Ivo Danihelka
no flags Details | Diff

  None (edit)
Description Wart 2006-10-29 23:08:47 EST
Description of problem:
The second level, "Briefcase Message", forces a save and reload which causes the
game to crash with the following error message:

main.cpp:117: ERROR script failure;
error='/usr/share/games/fillets-ng/script/share/Pickle.lua:81: attempt to call a
table value
stack traceback:
        /usr/share/games/fillets-ng/script/share/Pickle.lua:81: in function
        ...sr/share/games/fillets-ng/script/share/prog_save.lua:29: in function
        [string "script_loadState()"]:1: in main chunk'
Path.cpp:44: INFO creating path; path='/home/wart/.fillets-ng/script/options.lua'

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Remove the ~/.fillets-ng directory to start fresh
2. Open a terminal and run 'fillets'
3. Work your way to level 2 "Briefcase Message"
4. Lift the pipe and move the nut to enter the workshop.
5. Let the game run on its own while it shows you tips in the workshop.  This
will trigger an automatic save, then an automatic reload once the level restarts
Actual results:
The game reloads and exits with the error message above once the fish reenter
the workshop.

Expected results:
The game lets the player continue after the level has restarted from the save point.

Additional info:
I've tried manually saving and reloading at various points on this level, but
still get the same results.

I see this problem on both FC6-i386 and FC6-x86_64, but not on FC5-i386.
Comment 1 Ivo Danihelka 2006-10-31 17:02:52 EST
Created attachment 139905 [details]
Fixes table iterations

Lua 5.1 is no longer supporting the old way of table iteration.

$ cd $fillets_data/script
$ patch -p0 <pairs.patch
Comment 2 Ivo Danihelka 2006-10-31 17:09:13 EST
Game reloading (F3) is broken in general. The Lua 5.1 has completely deprecated
the older way of iteration over tables. The attached patch fixes this particular
problem. It could be applied on fillets-data without recompilation.
Comment 3 Wart 2006-10-31 20:59:14 EST
I tried out the patch and it did indeed fix the problem for me.

Comment 4 Matthias Saou 2006-11-10 08:29:35 EST
I'll apply the patch and release a 0.7.1-2 package, which I'll have backported
to FC4 and newer, since even FC4 now includes lua 5.1. Does this seem correct?

Note You need to log in before you can comment on or make changes to this bug.