Cairo Crash when Displaying Remotely to Solaris 8



Hi,

My program is crashing with the traceback provided below when executed
under the following scenario:

1) user is logged into a RedHat Enterprise Linux 4 machine via ssh -X
2) user executes the program for display back onto his machine
3) user machine = Sun Sparc architecture, running Solaris 8

This same scenario, executing remotely while displaying locally, works
without issue when the display machine is either another Linux machine or
a Mac OS X machine (either platform).

The program is crashing at startup (in call to gtk_widget_show_all()), and
as can be seen from the traceback, is failing in its calls to cairo.

I conclude that there is some issue related to the combination of calls to
cairo and the Solaris 8 machine, though this confuses me a bit.  Is it not
so that when executing and displaying on different machines, all calls to
graphics libraries not XLib occur on the executing machine, while all
calls to XLib itself occur on the displaying machine?  If this is true,
then why would calls to cairo fail only when displaying back to a Solaris
8 box?

On the other hand, that said, perhaps my assumptions are wrong and I'm
missing something fundamental here.

Anyone understand this and/or able to identify where this scenario is
going wrong and why?  And, the obvious follow-up, what is required to get
this to work as it should?

thanks in advance for any pointers,

richard

======= TRACEBACK ==============

[sh]$ gdb pqlx
GNU gdb Red Hat Linux (6.3.0.0-1.134.fc5rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host
libthread_db library "/lib/libthread_db.so.1".

(gdb) r

Starting program: /usr/local/bin/pqlx
Reading symbols from shared object read from target memory...done.
Loaded system supplied DSO at 0xd82000
[Thread debugging using libthread_db enabled]
[New Thread -1208650048 (LWP 4725)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1208650048 (LWP 4725)]
0x00000000 in ?? ()

#0  0x00000000 in ?? ()
#1  0x438c2589 in _cairo_pixman_composite_triangles () from
/usr/lib/libcairo.so.2
#2  0x438c315f in _cairo_pixman_composite_triangles () from
/usr/lib/libcairo.so.2
#3  0x438b5aa2 in _cairo_pixman_composite () from /usr/lib/libcairo.so.2
#4  0x4389a4bf in cairo_font_options_create () from /usr/lib/libcairo.so.2
#5  0x438a02ef in cairo_surface_reference () from /usr/lib/libcairo.so.2
#6  0x438976bf in cairo_font_options_create () from /usr/lib/libcairo.so.2
#7  0x43897925 in cairo_font_options_create () from /usr/lib/libcairo.so.2
#8  0x438982fc in cairo_font_options_create () from /usr/lib/libcairo.so.2
#9  0x43898527 in cairo_font_options_create () from /usr/lib/libcairo.so.2
#10 0x438986da in cairo_font_options_create () from /usr/lib/libcairo.so.2
#11 0x43891779 in cairo_stroke_preserve () from /usr/lib/libcairo.so.2
#12 0x438917a2 in cairo_stroke () from /usr/lib/libcairo.so.2
#13 0x0027cdca in clearlooks_draw_progressbar_trough ()
   from /usr/lib/gtk-2.0/2.4.0/engines/libclearlooks.so
#14 0x00277e15 in clearlooks_style_register_type ()
   from /usr/lib/gtk-2.0/2.4.0/engines/libclearlooks.so
#15 0x436b6dca in gtk_paint_box () from /usr/lib/libgtk-x11-2.0.so.0
#16 0x4368deb5 in gtk_progress_bar_set_bar_style () from
/usr/lib/libgtk-x11-2.0.so.0
#17 0x4368cb2c in gtk_progress_configure () from /usr/lib/libgtk-x11-2.0.so.0
#18 0x4368ce2c in gtk_progress_configure () from /usr/lib/libgtk-x11-2.0.so.0
#19 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#20 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#21 0x4329ff8b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#22 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#23 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#24 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#25 0x437565f6 in gtk_widget_realize () from /usr/lib/libgtk-x11-2.0.so.0
#26 0x43756899 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#27 0x435d37b5 in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#28 0x43596631 in gtk_box_pack_start_defaults () from
/usr/lib/libgtk-x11-2.0.so.0
#29 0x435d10db in gtk_container_forall () from /usr/lib/libgtk-x11-2.0.so.0
#30 0x435d376b in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#31 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#32 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#33 0x432a006d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#34 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0

#35 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#36 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#37 0x43756831 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#38 0x435d37b5 in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#39 0x43596600 in gtk_box_pack_start_defaults () from
/usr/lib/libgtk-x11-2.0.so.0
#40 0x435d10db in gtk_container_forall () from /usr/lib/libgtk-x11-2.0.so.0
#41 0x435d376b in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#42 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#43 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#44 0x432a006d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#45 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#46 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#47 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#48 0x43756831 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#49 0x435d37b5 in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#50 0x43592a8f in gtk_button_box_set_child_size () from
/usr/lib/libgtk-x11-2.0.so.0
#51 0x435d10db in gtk_container_forall () from /usr/lib/libgtk-x11-2.0.so.0
#52 0x435d376b in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#53 0x435f6e99 in gtk_event_box_new () from /usr/lib/libgtk-x11-2.0.so.0
#54 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#55 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#56 0x432a006d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#57 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#58 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#59 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#60 0x43756831 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#61 0x435d37b5 in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#62 0x43596600 in gtk_box_pack_start_defaults () from
/usr/lib/libgtk-x11-2.0.so.0
#63 0x435d10db in gtk_container_forall () from /usr/lib/libgtk-x11-2.0.so.0
#64 0x435d376b in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#65 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#66 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#67 0x432a006d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#68 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#69 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#70 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#71 0x43756831 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#72 0x435d37b5 in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#73 0x43596600 in gtk_box_pack_start_defaults () from
/usr/lib/libgtk-x11-2.0.so.0
#74 0x435d10db in gtk_container_forall () from /usr/lib/libgtk-x11-2.0.so.0
#75 0x435d376b in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#76 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#77 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#78 0x432a006d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#79 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#80 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#81 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#82 0x43756831 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#83 0x435d37b5 in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#84 0x43596600 in gtk_box_pack_start_defaults () from
/usr/lib/libgtk-x11-2.0.so.0
#85 0x435d10db in gtk_container_forall () from /usr/lib/libgtk-x11-2.0.so.0
#86 0x435d376b in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#87 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#88 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#89 0x432a006d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#90 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#91 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#92 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#93 0x43756831 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#94 0x435d37b5 in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#95 0x43596600 in gtk_box_pack_start_defaults () from
/usr/lib/libgtk-x11-2.0.so.0
#96 0x435d10db in gtk_container_forall () from /usr/lib/libgtk-x11-2.0.so.0
#97 0x435d376b in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#98 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#99 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#100 0x432a006d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#101 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#102 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#103 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#104 0x43756831 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#105 0x437650d8 in gtk_window_new () from /usr/lib/libgtk-x11-2.0.so.0
#106 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#107 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#108 0x4329ff8b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#109 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#110 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#111 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#112 0x43756831 in gtk_widget_map () from /usr/lib/libgtk-x11-2.0.so.0
#113 0x4376511e in gtk_window_new () from /usr/lib/libgtk-x11-2.0.so.0
#114 0x432ad1d9 in g_cclosure_marshal_VOID__VOID () from
/usr/lib/libgobject-2.0.so.0
#115 0x4329e7a9 in g_value_set_static_boxed () from
/usr/lib/libgobject-2.0.so.0
#116 0x4329ff8b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#117 0x432b12ca in g_signal_override_class_closure () from
/usr/lib/libgobject-2.0.so.0
#118 0x432b2347 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#119 0x432b2509 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#120 0x43755ce8 in gtk_widget_show () from /usr/lib/libgtk-x11-2.0.so.0
#121 0x435d38ab in gtk_container_child_type () from
/usr/lib/libgtk-x11-2.0.so.0
#122 0x43756cdd in gtk_widget_show_all () from /usr/lib/libgtk-x11-2.0.so.0
#123 0x0806f352 in make_pql () at gtk_pql.c:1465
#124 0x0804f7b5 in main (argc=1, argv=0xbfa8ed64) at pqlx.c:178
(gdb)





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]