URL:
  <http://gna.org/bugs/?11751>

                 Summary: Segfault when an explosion happens on
OpenBSD/NetBSD
                 Project: Wormux
            Submitted by: landry
            Submitted on: Wednesday 05/28/2008 at 12:51
                Category: Physics
                Severity: 3 - Normal
                Priority: 5 - Normal
                  Status: None
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
                 Release: 0.8.0
         Discussion Lock: Any

    _______________________________________________________

Details:

This has been first noticed by NetBSD original porter, and been fixed in
pkgsrc. It happens on OpenBSD too. To reproduce, start a simple game, make an
explosion (dynamite, whatever), wormux segfaults in src/map/tileitem.cpp:

map/tileitem.cpp:266: Missed assertion "tile_lenght > 0".
zsh: segmentation fault (core dumped)  wormux

Partial backtrace:
(gdb) bt
#0  0x1c0bb40e in non-virtual thunk to std::iostream::~iostream() ()
#1  0x1c0baec3 in non-virtual thunk to std::iostream::~iostream() ()
#2  0x1c0b7151 in non-virtual thunk to std::iostream::~iostream() ()
#3  0x1c0aa3b6 in void std::__destroy_aux<std::string*>(std::string*,
std::string*, __false_type) ()
#4  0x1c14397f in std::string*
std::__uninitialized_copy_aux<__gnu_cxx::__normal_iterator<std::string
const*, std::vector<std::string, std::allocator<std::string> > >,
std::string*>(__gnu_cxx::__normal_iterator<std::string const*,
std::vector<std::string, std::allocator<std::string> > >,
__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string,
std::allocator<std::string> > >, std::string*, __false_type)
    ()
#5  0x1c144868 in std::string*
std::__uninitialized_copy_aux<__gnu_cxx::__normal_iterator<std::string
const*, std::vector<std::string, std::allocator<std::string> > >,
std::string*>(__gnu_cxx::__normal_iterator<std::string const*,
std::vector<std::string, std::allocator<std::string> > >,
__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string,
std::allocator<std::string> > >, std::string*, __false_type)
    ()
#6  0x1c10eba1 in toupper ()
#7  0x1c1121cf in toupper ()

The attached patch against 0.8.0 (taken originally from
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/games/wormux/patches/patch-aa?rev=1.1.1.1&content-type=text/x-cvsweb-markup
and backported to 0.8.0 on OpenBSD) seems to fix the issue.



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Wednesday 05/28/2008 at 12:51  Name: patch-src_map_tileitem_cpp  Size:
1kB   By: landry
patch against src/map/tileitem.cpp
<http://gna.org/bugs/download.php?file_id=4380>

    _______________________________________________________

Reply to this item at:

  <http://gna.org/bugs/?11751>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Wormux-gna mailing list
[email protected]
https://mail.gna.org/listinfo/wormux-gna

Reply via email to