[ scummvm-Bugs-2120595 ] IRIX: Crash when starting ANY game from launcher

SourceForge.net noreply at sourceforge.net
Sat Sep 20 16:15:21 CEST 2008


Bugs item #2120595, was opened at 2008-09-20 16:15
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418820&aid=2120595&group_id=37116

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Unknown Crash/Other
Group: All Games
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Joost Peters (joostp)
Assigned to: Max Horn (fingolfin)
Summary: IRIX: Crash when starting ANY game from launcher

Initial Comment:
With latest SVN (r34611) on an SGI Octane with IRIX 6.5.27 (64-bit, big endian, requires alignment), attempting to start any game from the launcher gives a segfault.

The cause of this seems to happen when a "large" String  (exceeding the default capacity - in this case the path of the game) gets pushed in via addDefaultDirectoryRecursive.

The String class will then allocate memory on the heap, but it appears this memory isn't properly aligned. (just a guess, I haven't checked the values, I can do that shortly).

backtrace:

Starting program: /usr/people/joostp/src/svn/scummvm/scummvm -p /usr/people/joostp/games/bass/ sky
User picked target 'sky' (gameid 'sky')...
  Looking for a plugin supporting this gameid... Beneath a Steel Sky
  Starting 'Beneath a Steel Sky'

Program received signal SIGSEGV, Segmentation fault.
0x10419048 in Common::String::incRefCount (this=0x7fff23c4)
    at common/str.cpp:183
183                     ++(*_extern._refCount);
(gdb) bt
#0  0x10419048 in Common::String::incRefCount (this=0x7fff23c4)
    at common/str.cpp:183
#1  0x10418a8c in String (this=0x105385ac, str=@0x7fff23c4)
    at common/str.cpp:88
#2  0x10435134 in Node (this=0x105385a8, _ctor_arg=@0x7fff23c0)
    at common/archive.cpp:270
#3  0x10437e50 in Node (this=0x105385a0, x=@0x7fff23c0) at list.h:52
#4  0x10436dd4 in Common::List<Common::SearchSet::Node>::insert (
    this=0x1053764c, pos={_node = 0x1053764c}, element=@0x7fff23c0)
    at list.h:158
#5  0x10434b18 in Common::SearchSet::insert (this=0x10537648,
    node=@0x7fff23c0) at common/archive.cpp:231
#6  0x10434c64 in Common::SearchSet::add (this=0x10537648, name=@0x7fff2490,
    archive=
      {_refCount = 0x10537880, _deletion = 0x10537890, _pointer = 0x10538018}, priority=1) at common/archive.cpp:237
#7  0x104113c0 in Common::File::addDefaultDirectoryRecursive (
    dir=@0x7fff2510, level=4) at common/file.cpp:61
#8  0x10411164 in Common::File::addDefaultDirectoryRecursive (
    directory=@0x7fff2550, level=4) at common/file.cpp:44
#9  0x100b9af8 in runGame (plugin=0x10537678, system=@0x1052f948,
    edebuglevels=@0x7fff2a20) at base/main.cpp:172


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418820&aid=2120595&group_id=37116




More information about the Scummvm-tracker mailing list