selling add_cargo__volume crashes vegastrike

Find any bugs in Vega Strike? See if someone has already found it, or report them here!
Post Reply
boeser.wolff
Hunter
Hunter
Posts: 93
Joined: Tue Jul 29, 2003 8:05 am
Contact:

selling add_cargo__volume crashes vegastrike

Post by boeser.wolff »

trying to sell a previously bough "cargo space upgrade" on a starfish results in lockup of vegastrike
i tried to gdb vegstrike, but as the game does not crash, but just lock up, i get no usable error message, memory dump, etc...
im using vegastrike 0.3.9, compiled for 686
ace123
Lead Network Developer
Lead Network Developer
Posts: 2560
Joined: Sun Jan 12, 2003 9:13 am
Location: Palo Alto CA
Contact:

Post by ace123 »

It freezes so you can press ctrl-c inside gdb before anything bad happens. Next time, just press ctrl-c inside the console window (make sure you're in windowed mode) and then do "bt full" to get a backtrace.
Guest

Post by Guest »

i noticed i compiled vegastrike without debugging symbols :oops:

but i could reproduce the crash and got a little output and a log of warnings. this behavior does not seem to be ship-specific, because i was flying a hispidus when it happened again...

well, because of no debugging symbols, i only get:

(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 2950)]

backtrace full gives:

0x082d1784 in UpgradingInfo::SelectItem(char const*,int, int) ()
no symbol table info available

maybe therell be more info once i manage to compile with debug. syms.
im currently trying to get vegastrike from cvs, so this could take a while (weekly cvs snapshots for example would be quite helpful - or patches for the source.... the cvs server is a pain)
Guest

Post by Guest »

i also noticed one other thing that crashes 0.3.9.1:
buying all cargo in a category with no subcategory crashes vegastrike:
buying all items from electonics, compressed gasses, entertainmend causes a crash

nothing does happen when buying all item from electronics/robotics, natural producs/food, contraband/aera, etc

(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 3927)]

backtrace full gives:

0x082d1784 in UpgradingInfo::SelectItem(char const*,int, int) ()
boeser.wolff
Hunter
Hunter
Posts: 93
Joined: Tue Jul 29, 2003 8:05 am
Contact:

Post by boeser.wolff »

sorry, i wasnt logged in.... for both cases applies that vegastrike keeps running until i 'kill' it in gdb
hellcatv
Developer
Developer
Posts: 3980
Joined: Fri Jan 03, 2003 4:53 am
Location: Stanford, CA
Contact:

Post by hellcatv »

I believe I fixed this before I left in latest CVS version of VS

we're getting a whole new GUI tho--so maybe we don't need to care
Vega Strike Lead Developer
http://vegastrike.sourceforge.net/
boeser.wolff
Hunter
Hunter
Posts: 93
Joined: Tue Jul 29, 2003 8:05 am
Contact:

Post by boeser.wolff »

ok, here we go again - with cvs-yesterday, and neat debugging symbols:

http://boeserwolff.privat.t-online.de/s ... volume.bz2
http://boeserwolff.privat.t-online.de/s ... volume.bz2

gdb gives me:

(gdb) run
Starting program: /usr/local/bin/vegastrike >~/stdout.txt 2>~/stderr.txt
[New Thread 16384 (LWP 709)]
[New Thread 32769 (LWP 711)]
[New Thread 16386 (LWP 712)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 709)]
UpgradingInfo::SelectItem(char const*, int, int) (this=0xa4874e0, item=0xbf19c0d0 <Address 0xbf19c0d0 out of bounds>, button=1, buttonstate=0) at basic_string.h:249
249 { return _M_dataplus._M_p; }

(gdb) backtrace full

#0 UpgradingInfo::SelectItem(char const*, int, int) (this=0xa1c9ea8, item=0xcec78770 <Address 0xcec78770 out of bounds>, button=1, buttonstate=0) at basic_string.h:249
cargonumber = 158176940
oldprice = 0
floatprice = "\215[m\tí\\m\t8òÿ¿#ö%\bxòÿ¿\210\036<\n\035\0\0\0À,<\n,\0\0\0\035\0\0\0xòÿ¿\017\0\0\0¬\034m\t\v\0\0\0\017\0\0\0\0\0\200?@\034<\nX\034<\n\030òÿ¿\203à%\bX\034<\nxòÿ¿\0òÿ¿\024\0\0\0hòÿ¿dòÿ¿\r\0\0\0\v\0\0\0d\234ÑJ \034<\n@\034<\nú\200\002@¬\034m\t\017\0\0\0\v\0\0\0\0òÿ¿t©R\bxòÿ¿\0\0\0\0\"\203\002@@\034<\n`òÿ¿øòÿ¿8½\002@\034\0\0\0üèJ@hòÿ¿8½\002@üèJ@è5L@"...
#1 0x082c0ee8 in UpgradingInfo::SelectLastSelected() (this=0xa1c9ea8) at unit_interface.cpp:1164
buy_name = 0x0
ours = 0
#2 0x082c0f53 in UpgradingInfo::CompleteTransactionConfirm() (this=0xa1c9ea8) at unit_interface.cpp:1223
percentage = 1
mountoffset = 156898576
subunitoffset = 169647828
price = 0
addmultmode = 0
#3 0x082c0dae in UpgradingInfo::CompleteTransactionAfterTurretSelect() (this=0xa1c9ea8) at unit_interface.cpp:1151
mountoffset = 0
subunitoffset = 0
canupgrade = false
percentage = 1
addmultmode = -1073744712
#4 0x082c0caa in UpgradingInfo::CompleteTransactionAfterMountSelect() (this=0xa1c9ea8) at unit_interface.cpp:1121
No locals.
#5 0x082bfd3d in UpgradingInfo::CommitItem(char const*, int, int) (this=0xa1c9ea8, inp_buf=0xa3dc0a8 " ¿=\n0Î9\nrgo_volu\030", button=0, state=0) at unit_interface.cpp:1016
offset = 272
quantity = 0
index = 0
input_buffer = 0xa1ed8e8 "add_cargo_volume"
__str = {static npos = 4294967295, _M_dataplus = {<allocator<char>> = {<No data fields>}, _M_p = 0x2 <Address 0x2 out of bounds>}, static _S_empty_rep_storage = {0, 0, 0, 0}}
#6 0x082c1360 in UpgradingInfo::ProcessMouse(int, int, int, int, int) (this=0xa1c9ea8, type=1, x=220, y=725, button=1, state=0) at unit_interface.cpp:1292
ours = 1
cur_x = -0.5703125
cur_y = -0.888020813
buy_name = 0xa3dc0a8 " ¿=\n0Î9\nrgo_volu\030"
#7 0x082bbb41 in UpgradingInfo::ProcessMouseClick(int, int, int, int) (button=1, state=0, x=220, y=725) at unit_interface.cpp:600
No locals.
#8 0x08459279 in winsys_process_events () at winsys.cpp:373
event = {type = 6 '\006', active = {type = 6 '\006', gain = 0 '\0', state = 1 '\001'}, key = {type = 6 '\006', which = 0 '\0', state = 1 '\001', keysym = {scancode = 220 'Ü', sym = SDLK_UNKNOWN,
mod = KMOD_NONE, unicode = 0}}, motion = {type = 6 '\006', which = 0 '\0', state = 1 '\001', x = 220, y = 725, xrel = 0, yrel = 0}, button = {type = 6 '\006', which = 0 '\0', button = 1 '\001',
state = 0 '\0', x = 220, y = 725}, jaxis = {type = 6 '\006', which = 0 '\0', axis = 1 '\001', value = 220}, jball = {type = 6 '\006', which = 0 '\0', ball = 1 '\001', xrel = 220, yrel = 725}, jhat = {
type = 6 '\006', which = 0 '\0', hat = 1 '\001', value = 0 '\0'}, jbutton = {type = 6 '\006', which = 0 '\0', button = 1 '\001', state = 0 '\0'}, resize = {type = 6 '\006', w = 47513820, h = 0},
expose = {type = 6 '\006'}, quit = {type = 6 '\006'}, user = {type = 6 '\006', code = 47513820, data1 = 0x0, data2 = 0x0}, syswm = {type = 6 '\006', msg = 0x2d500dc}}
x = -1082130432
y = 1078728700
#9 0x0844af25 in GFXLoop (main_loop=0x81a6b5e <bootstrap_first_loop>) at gl_init.cpp:397
are_we_looping = true
#10 0x081a61dc in main (argc=147433588, argv=0xbffffa24) at main.cpp:319
temp = {<_Vector_base<std::vector<char, std::allocator<char> >,std::allocator<std::vector<char, std::allocator<char> > > >> = {<_Vector_alloc_base<std::vector<char, std::allocator<char> >,std::allocator<std::vector<char, std::allocator<char> > >,true>> = {_M_start = 0x8d154b8, _M_finish = 0x8d155cc, _M_end_of_storage = 0x8d155cc}, <No data fields>}, <No data fields>}
hellcatv
Developer
Developer
Posts: 3980
Joined: Fri Jan 03, 2003 4:53 am
Location: Stanford, CA
Contact:

Post by hellcatv »

really? SelectItem is no longer called any more for the past few weeks


what color buttons does the interface have
they should be blue, not purple
Vega Strike Lead Developer
http://vegastrike.sourceforge.net/
boeser.wolff
Hunter
Hunter
Posts: 93
Joined: Tue Jul 29, 2003 8:05 am
Contact:

Post by boeser.wolff »

they are - hmm, mostly blue, with a hint of purple, hex: 8377ca
this is the vegastrike i checked out two days before, so the data.... i really would like to see cvs-snapshots, this would make sure that i get is what i want, not what sf backup-cvs gives me... and it would make easier to tell what it is that i got....
hellcatv
Developer
Developer
Posts: 3980
Joined: Fri Jan 03, 2003 4:53 am
Location: Stanford, CA
Contact:

Post by hellcatv »

is the buy button between both lists of items
is there an expanding tree

or is it more or less the same as last release

because the current interface does not have a function called SelectItem
Vega Strike Lead Developer
http://vegastrike.sourceforge.net/
boeser.wolff
Hunter
Hunter
Posts: 93
Joined: Tue Jul 29, 2003 8:05 am
Contact:

Post by boeser.wolff »

it looks more or less than last release and i think this IS more or less last release....

cvs -d:pserser..... checkout xy

should get module xy out of cvs and create a local copy... overwriting/updating any previously downloaded files, right?

i moved that directory away and downloaded a new copy: diff between old and new show some differences, both configured same way

so i assume my copy did not get updated, although i ran cvs...checkout over it several times...
hellcatv
Developer
Developer
Posts: 3980
Joined: Fri Jan 03, 2003 4:53 am
Location: Stanford, CA
Contact:

Post by hellcatv »

if you got the tagged vegastrike_0_3_9
then if you update it will only get stuff we tag

to get a clean copy do

cvs update -A
Vega Strike Lead Developer
http://vegastrike.sourceforge.net/
boeser.wolff
Hunter
Hunter
Posts: 93
Joined: Tue Jul 29, 2003 8:05 am
Contact:

Post by boeser.wolff »

thanks for that hint, that seemed to be the problem...
and i was wondering why nothing in the game changed :)
Post Reply