To: discussions about usage and development of dia <dia-list gnome org>
Subject: Re: 0.94 corrupts diagrams
Date: Mon, 19 Jul 2004 11:42:51 +0200
On Mon, 2004-07-19 at 10:18, Zhang Lin-bo wrote:
> I think I encountered a severe bug introduced in Dia 0.94,
> though I'm not sure if it's related to my installation.
>
> Attached is a diagram created using Dia 0.93.
> If it's loaded and then saved with Dia 0.94,
> the saved diagram seems to be corrupted and can
> no more be loaded with Dia 0.93 (sometimes it
> can't even be loaded with 0.94).
>
> I'd like someone to take a look at it.
When I close the window of this diagram in 0.94-pre1, I get:
========================================================================
(gdb) run
Starting program: /usr/bin/dia temp/test/1.dia
[Thread debugging using libthread_db enabled]
[New Thread 1083946848 (LWP 3239)]
** (dia:3239): WARNING **: Cannot open icon file /usr/share/dia/shapes/RDP/place_marquee.png for object type 'RDP - place marquee'.
** (dia:3239): WARNING **: Cannot open icon file /usr/share/dia/shapes/RDP/place.xpm for object type 'RDP - place'.
** (dia:3239): WARNING **: Cannot open icon file /usr/share/dia/shapes/RDP/transition.xpm for object type 'RDP - transition'.
** (dia:3239): WARNING **: Cannot open icon file /usr/share/dia/shapes/RDP/t_transition.png for object type 'RDP - transition temporisee'.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1083946848 (LWP 3239)]
0x40667ad0 in g_list_remove () from /usr/lib/libglib-2.0.so.0
(gdb) thread apply all bt
Thread 1 (Thread 1083946848 (LWP 3239)):
#0 0x40667ad0 in g_list_remove () from /usr/lib/libglib-2.0.so.0
#1 0x40040796 in object_unconnect () from /usr/lib/dia/libdia.so
#2 0x400408a9 in object_unconnect_all () from /usr/lib/dia/libdia.so
#3 0x4003fe82 in object_destroy () from /usr/lib/dia/libdia.so
#4 0x40041caf in connection_destroy () from /usr/lib/dia/libdia.so
#5 0x40d377cf in line_destroy () from /usr/lib/dia/libstandard_objects.so
#6 0x400403ea in destroy_object_list () from /usr/lib/dia/libdia.so
#7 0x40039028 in group_destroy () from /usr/lib/dia/libdia.so
#8 0x400403ea in destroy_object_list () from /usr/lib/dia/libdia.so
#9 0x4002ecff in layer_destroy () from /usr/lib/dia/libdia.so
#10 0x4002fdc5 in diagram_data_finalize () from /usr/lib/dia/libdia.so
#11 0x406113a9 in g_object_interface_list_properties ()
from /usr/lib/libgobject-2.0.so.0
#12 0x0805e8c7 in diagram_finalize ()
#13 0x406113a9 in g_object_interface_list_properties ()
from /usr/lib/libgobject-2.0.so.0
#14 0x080703d5 in ddisplay_really_destroy ()
#15 0x40623151 in g_cclosure_marshal_VOID__VOID ()
from /usr/lib/libgobject-2.0.so.0
#16 0x4060ec20 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#17 0x40622c55 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
#18 0x40621c17 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#19 0x40621f14 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#20 0x40251f25 in gtk_object_destroy () from /usr/lib/libgtk-x11-2.0.so.0
#21 0x40338abf in gtk_widget_get_default_direction ()
from /usr/lib/libgtk-x11-2.0.so.0
#22 0x4033e2d2 in _gtk_window_reposition () from /usr/lib/libgtk-x11-2.0.so.0
#23 0x40611517 in g_object_run_dispose () from /usr/lib/libgobject-2.0.so.0
#24 0x40251e59 in gtk_object_destroy () from /usr/lib/libgtk-x11-2.0.so.0
#25 0x40330e25 in gtk_widget_destroy () from /usr/lib/libgtk-x11-2.0.so.0
#26 0x0806ded1 in ddisplay_delete ()
#27 0x402352d4 in _gtk_marshal_BOOLEAN__BOXED ()
from /usr/lib/libgtk-x11-2.0.so.0
#28 0x4060ec20 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#29 0x40622c55 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
#30 0x406219ee in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#31 0x40621f14 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#32 0x40333aa7 in gtk_widget_send_expose () from /usr/lib/libgtk-x11-2.0.so.0
#33 0x40232524 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
#34 0x4042e0f5 in _gdk_events_queue () from /usr/lib/libgdk-x11-2.0.so.0
#35 0x4066a922 in g_main_depth () from /usr/lib/libglib-2.0.so.0
#36 0x4066ba18 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#37 0x4066bd50 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#38 0x4066c393 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#39 0x40231e83 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#40 0x0809da8f in main ()
(gdb)
========================================================================
When I try to open the then saved diagram with 0.93, I get:
========================================================================
(gdb) run
Starting program: /usr/bin/dia temp/test/1.dia
[Thread debugging using libthread_db enabled]
[New Thread 1083918176 (LWP 2430)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1083918176 (LWP 2430)]
0x40037109 in group_create () from /usr/lib/dia/libdia.so
(gdb) thread apply all bt
Thread 1 (Thread 1083918176 (LWP 2430)):
#0 0x40037109 in group_create () from /usr/lib/dia/libdia.so
#1 0x0805f193 in read_objects ()
#2 0x08649920 in ?? ()
(gdb)
========================================================================
bye,
Roland