After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 316096 - gnome panel crashes starting Mathematica from Command Line applet
gnome panel crashes starting Mathematica from Command Line applet
Status: RESOLVED DUPLICATE of bug 332493
Product: libwnck
Classification: Core
Component: tasklist
2.12.x
Other Linux
: Normal major
: ---
Assigned To: libwnck maintainers
libwnck maintainers
: 323883 326841 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2005-09-12 15:23 UTC by Andreas Kotowicz
Modified: 2006-03-29 15:54 UTC
See Also:
GNOME target: ---
GNOME version: 2.11/2.12


Attachments
Mathematica script calling the mathematica kernel (3.42 KB, text/plain)
2005-09-12 15:27 UTC, Andreas Kotowicz
Details

Description Andreas Kotowicz 2005-09-12 15:23:32 UTC
add command line applet to panel
start Mathematica from command line applet
Mathematica gets started
wnck-applet uses 100% of my system resources
I can't select any windows on my panel at the bottom but can still access menu
and applications on my top panel.
I start gnome-terminal
kill wnck-applet
I get these messages:
"Show Desktop" has quit unexpectedly
"Window List" has quit unexpectedly
"Workspace Switcher" has quit unexpectedly

this happens every time I start Mathematica. it doesn't happen for other programs.
Comment 1 Andreas Kotowicz 2005-09-12 15:27:20 UTC
Created attachment 52131 [details]
Mathematica script calling the mathematica kernel

Maybe it helps to see what the Mathematica command does
Comment 2 Sebastien Bacher 2005-09-14 14:24:12 UTC
Ubuntu bugzilla has a bug about that:
http://bugzilla.ubuntu.com/show_bug.cgi?id=14173

"...
(gdb) thread apply all bt

Thread 1 (Thread -1223653696 (LWP 10757))

  • #0 g_static_rw_lock_writer_lock
    from /usr/lib/libglib-2.0.so.0
  • #1 g_type_init_with_debug_flags
    from /usr/lib/libgobject-2.0.so.0
  • #2 g_type_init
    from /usr/lib/libgobject-2.0.so.0
  • #3 wnck_window_get_type
    from /usr/lib/libwnck-1.so.18
  • #4 wnck_window_get_transient
    from /usr/lib/libwnck-1.so.18
  • #5 wnck_tasklist_get_size_hint_list
    from /usr/lib/libwnck-1.so.18
  • #6 g_cclosure_marshal_VOID__VOID
    from /usr/lib/libgobject-2.0.so.0
  • #7 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #8 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #9 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #10 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #11 wnck_screen_get_default
    from /usr/lib/libwnck-1.so.18

Comment 3 Sebastien Bacher 2005-09-17 11:03:45 UTC
Debug backtrace:

(gdb) bt
  • #0 pthread_mutex_lock
    from /lib/tls/i686/cmov/libpthread.so.0
  • #1 IA__g_type_init_with_debug_flags
    at gtype.c line 3388
  • #2 IA__g_type_init
    at gtype.c line 3487
  • #3 wnck_tasklist_activate_task_window
    at tasklist.c line 2165
  • #4 wnck_task_popup_menu
    at tasklist.c line 2330
  • #5 wnck_task_finalize
    at tasklist.c line 575
  • #6 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #7 IA__g_closure_invoke
    at gclosure.c line 492
  • #8 signal_emit_unlocked_R
    at gsignal.c line 2485
  • #9 IA__g_signal_emit_valist
    at gsignal.c line 2244
  • #10 IA__g_signal_emit
    at gsignal.c line 2288
  • #11 wnck_screen_class_init
    at screen.c line 213
  • #12 _wnck_screen_get_existing
    at screen.c line 453
  • #13 update_client_list
    at screen.c line 984
  • #14 g_idle_dispatch
    at gmain.c line 3813
  • #15 IA__g_main_context_dispatch
    at gmain.c line 1934
  • #16 g_main_context_iterate
    at gmain.c line 2565
  • #17 IA__g_main_loop_run
    at gmain.c line 2769
  • #18 bonobo_main
    from /usr/lib/libbonobo-2.so.0
  • #19 bonobo_generic_factory_main_timeout
    from /usr/lib/libbonobo-2.so.0
  • #20 bonobo_generic_factory_main
    from /usr/lib/libbonobo-2.so.0
  • #21 panel_applet_factory_main_closure
    at panel-applet.c line 1671
  • #22 panel_applet_factory_main
    at panel-applet.c line 1695
  • #23 main
    at wncklet.c line 225

Comment 4 Vincent Untz 2005-09-18 16:31:56 UTC
Sébastien: is "task->was_active = FALSE;" line 2165 in tasklist.c for you?

I'm also not sure I understand: is it crashing or is it a stack trace of the
applet during a 100%CPU loop?
Comment 5 Sebastien Bacher 2005-09-18 19:31:19 UTC
correct for l2165 (libwnck 2.12.0), it doesn't crash that a bt from a loop when
starting mathematica
Comment 6 Sebastien Bacher 2005-10-18 09:10:51 UTC
anything else that could be useful for you guys on that?
Comment 7 Vincent Untz 2005-10-18 16:25:57 UTC
time? :-)
Comment 8 Sebastien Bacher 2005-10-21 08:04:31 UTC
Distro comment:

"A workaround is starting Mathematica using -noSplashScreen. This would prevent
the splash screen to show up (looks like the splash is the window causing trouble).
..."
Comment 9 Elijah Newren 2005-10-21 14:04:53 UTC
What's the output of running xprop and then clicking on that Mathematica
splashscreen?
Comment 10 Sebastien Bacher 2005-10-21 14:43:20 UTC
XKLAVIER_STATE(INTEGER) = 0, 2
WM_STATE(WM_STATE):
                window state: Normal
                icon window: 0x0
_NET_FRAME_EXTENTS(CARDINAL) = 5, 5, 26, 5
_NET_WM_DESKTOP(CARDINAL) = 0
_NET_WM_STATE(ATOM) = _NET_WM_STATE_SKIP_TASKBAR
_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE,
_NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_CHANGE_DESKTOP,
_NET_WM_ACTION_CLOSE
WM_TRANSIENT_FOR(WINDOW): window id # 0x420002d
WM_NAME(STRING) = " "
Comment 11 Elijah Newren 2005-10-21 17:33:18 UTC
Dang.  I don't see anything wrong there...

The stack traces don't make any sense to me either (wnck_task_finalize() doesn't
call wnck_task_popup_menu() though it does call wnck_tasklist_change_active_task
which could toggle the togglebutton calling wnck_task_button_toggled() which
could call wnck_task_popup_menu() or
wnck_tasklist_activate_task_window()....also, wnck_task_popup_menu() does not
call wnck_tasklist_activate_task_window() and I don't see any path it could take
to get there either).  I wonder if memory is totally hosed or something since
the stack trace looks so bad (maybe someone with mathematica could run libwnck
under valgrind?)

Also, is there any chance you could run under a profiler like oprofile or
sysprof?  Output from those are often a lot better at tracking down CPU spikes
than single-backtrace-snapshots from gdb.
Comment 12 Sebastien Bacher 2005-10-21 20:33:23 UTC
from valgrind:

==25368== Conditional jump or move depends on uninitialised value(s)
==25368==    at 0x1B94C853: _wnck_read_icons (xutils.c:2072)
==25368==    by 0x1B930D65: get_icons (application.c:290)
==25368==    by 0x1B930EFE: wnck_application_get_icon (application.c:347)
==25368==    by 0x1B932276: get_icons_from_applications (class-group.c:380)
==25368==    by 0x1B9323BC: set_icon (class-group.c:436)
==25368==    by 0x1B932653: _wnck_class_group_add_window (class-group.c:483)
==25368==    by 0x1B937E20: update_client_list (screen.c:946)
==25368==    by 0x1B939004: do_update_now (screen.c:1511)
==25368==    by 0x1B937573: wnck_screen_force_update (screen.c:652)
==25368==    by 0x804E227: window_list_applet_fill (window-list.c:676)
==25368==    by 0x1B924474: panel_applet_marshal_BOOLEAN__STRING
(panel-applet-marshal.c:128)
==25368==    by 0x1BE373A7: g_closure_invoke (gclosure.c:492)
Comment 13 Elijah Newren 2005-10-21 23:47:35 UTC
Yeah, isn't that the same valgrind error that's been showing up in valgrind logs
for months/years now?  We really ought to look at it...  Doesn't seem to be
filed either, which is weird, especially since I'm sure I've seen it several
times now.
Comment 14 Sebastien Bacher 2005-12-12 16:48:15 UTC
*** Bug 323883 has been marked as a duplicate of this bug. ***
Comment 15 Vincent Untz 2006-01-16 22:13:39 UTC
*** Bug 326841 has been marked as a duplicate of this bug. ***
Comment 16 pjv 2006-02-15 13:42:20 UTC
I have this too on gentoo. I just want to add that killall wnck-applet makes those  popups appear that ask if the panel applets and the panel need to be restarted. If you choose to do so everything works normal (with Mathematica), so the bug is definetely related to the splash.

The symptoms here are just a freeze (and grey-out when overlapped with something) of my bar that contains applets such as the windowswitcher. Alt+tab and the panel with the menu's keep working.

Used to work fine with gnome 2.10. Mathematica 5.2.
Comment 17 Andreas Kotowicz 2006-03-07 10:51:47 UTC
Just wanted to note, that the problem went away for me using latest gnome 2.14 rc. so it's probably not worth digging around in this here anymore. 
Comment 18 Elijah Newren 2006-03-28 20:36:26 UTC
Bug 336264 reports that this was the self-transiency problem (for which there is a patch) in bug 332493; I find it odd that 2.14 fixed it if that was indeed the problem.  Andreas: Are you using a distro that patched libwnck?
Comment 19 Andreas Kotowicz 2006-03-28 20:47:47 UTC
(In reply to comment #18)

I'm using gentoo here and I'm using the pure, unpatched version of libwnck-2.14.0.
I just restarted Mathematica and can confirm again that the bug is gone. 
Comment 20 Elijah Newren 2006-03-28 21:51:44 UTC
Did you start it from a terminal?  If so, the window wouldn't get focus and would prevent this bug from happening, despite the bug still being there.  Could you try clicking on the splashscreen before it disappears and verify whether the bug occurs or not when you do that?
Comment 21 Andreas Kotowicz 2006-03-28 22:24:16 UTC
I did start it from the terminal. and running mathematica from the deskbar applet actually brings the bug back (but I remember that starting mathematica from terminal did use to crash the wnck-applet - so this at least is somehow gone).

to your second question: clicking on the splashscreen while running mathematica from the terminal brings back the bug aswell.
Comment 22 Elijah Newren 2006-03-28 22:37:29 UTC
Awesome, thanks for the help Andreas.  Is there any chance I could get you to also verify whether the two patches in bug 332493 fix this bug?
Comment 23 Andreas Kotowicz 2006-03-29 07:40:36 UTC
I can confirm that the two patches do solve both problems. starting mathematica from the deskbar runs without a problem as well as running mathematica from terminal and clicking on the splashscreen.
Comment 24 Elijah Newren 2006-03-29 14:50:51 UTC
Great, thanks for all the detective work, Andreas.  I'll mark as a duplicate then, and since the patches have been committed, this'll be fixed in 2.14.1.  :)

*** This bug has been marked as a duplicate of 332493 ***
Comment 25 Andreas Kotowicz 2006-03-29 15:07:56 UTC
no problem. could you please commit this fix to the 2.12.x tree aswell? I know a lot of people who are forced to use gnome 2.12 and who would be happy if this issue would get fixed.
Comment 26 Elijah Newren 2006-03-29 15:54:36 UTC
Yeah, I can do that.  Not sure how much good it'll do since there aren't any more 2.12.x releases scheduled.  But, I guess it can't hurt just in case distributors check out the branch or in case we do make another release and distributors happen to look for it.