URL:
http://gna.org/bugs/?14031
Summary: Multiple units unload all crash
Project: Freeciv
Submitted by: pepeto
Submitted on: Wednesday 07/29/2009 at 07:50
Category: client
Severity: 4 - Important
Priority: 5 - Normal
Status: None
Assigned to: None
Originator Email:
Open/Closed: Open
Discussion Lock: Any
Release:
Operating System: None
___
Details:
When many transporters are doing unload all, the client usually crashes,
because the function could be simplified by:
unit_list_iterate(list, punit) {
unit_list_unlink_all(list);
} unit_list_iterate_end;
Back trace:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f3a986a66f0 (LWP 6313)]
0x0041b552 in key_unit_unload_all () at control.c:2471
2471 unit_list_iterate(get_units_in_focus(), punit) {
(gdb) bt
#0 0x0041b552 in key_unit_unload_all () at control.c:2471
#1 0x7f3a96ca6bbf in g_closure_invoke () from
/usr/lib/libgobject-2.0.so.0
#2 0x7f3a96cba7e8 in ?? () from /usr/lib/libgobject-2.0.so.0
#3 0x7f3a96cbc245 in g_signal_emit_valist ()
from /usr/lib/libgobject-2.0.so.0
#4 0x7f3a96cbc633 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#5 0x7f3a98145b5b in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#6 0x7f3a96ca6bbf in g_closure_invoke () from
/usr/lib/libgobject-2.0.so.0
#7 0x7f3a96cba7e8 in ?? () from /usr/lib/libgobject-2.0.so.0
#8 0x7f3a96cbbf6f in g_signal_emit_valist ()
from /usr/lib/libgobject-2.0.so.0
#9 0x7f3a96cbc633 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#10 0x7f3a97f5b506 in gtk_accel_group_activate ()
from /usr/lib/libgtk-x11-2.0.so.0
#11 0x7f3a97f5b60f in gtk_accel_groups_activate ()
from /usr/lib/libgtk-x11-2.0.so.0
#12 0x7f3a981534f8 in gtk_window_activate_key ()
from /usr/lib/libgtk-x11-2.0.so.0
#13 0x7f3a98153569 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#14 0x7f3a9803987f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#15 0x7f3a96ca6bbf in g_closure_invoke () from
/usr/lib/libgobject-2.0.so.0
#16 0x7f3a96cbabc8 in ?? () from /usr/lib/libgobject-2.0.so.0
#17 0x7f3a96cbbf6f in g_signal_emit_valist ()
---Type return to continue, or q return to quit---
from /usr/lib/libgobject-2.0.so.0
#18 0x7f3a96cbc633 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#19 0x7f3a98140e55 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#20 0x7f3a98032c4d in gtk_propagate_event ()
from /usr/lib/libgtk-x11-2.0.so.0
#21 0x7f3a98033b35 in gtk_main_do_event ()
from /usr/lib/libgtk-x11-2.0.so.0
#22 0x7f3a97c9d58c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#23 0x7f3a9660a384 in g_main_context_dispatch ()
from /usr/lib/libglib-2.0.so.0
#24 0x7f3a9660d695 in ?? () from /usr/lib/libglib-2.0.so.0
#25 0x7f3a9660d9b5 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#26 0x7f3a98033f03 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#27 0x004be1da in ui_main (argc=1, argv=0x7fffa06d8ba8)
at gui_main.c:1654
#28 0x00414ab0 in main (argc=value optimized out,
argv=0x7fffa06d8ba8) at civclient.c:417
Patch for both S2_1 and trunk.
___
File Attachments:
---
Date: Wednesday 07/29/2009 at 07:50 Name: unload_multiple_units.diff Size:
3kB By: pepeto
http://gna.org/bugs/download.php?file_id=6291
___
Reply to this item at:
http://gna.org/bugs/?14031
___
Message sent via/by Gna!
http://gna.org/
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev