Bug 30955 - wmaker aborts when gnome panel starts on multi-screen display
Summary: wmaker aborts when gnome panel starts on multi-screen display
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: WindowMaker
Version: 7.1
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Crutcher Dunnavant
QA Contact: David Lawrence
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2001-03-07 16:26 UTC by Bill Crawford
Modified: 2007-04-18 16:32 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2001-04-09 18:40:06 UTC
Embargoed:


Attachments (Terms of Use)

Description Bill Crawford 2001-03-07 16:26:31 UTC
From Bugzilla Helper:
User-Agent: Mozilla/4.76 [en] (X11; U; Linux 2.4.1-0.1.9 i686)


wmaker aborts (assert "bad_root_window") when gnome panel starts.  It *is*
then possible to restart WindowMaker.  Not sure exactly what causes it to
be looking for the wrong window, but I have a small band-aid patch that
solves the problem for me.


Reproducible: Always
Steps to Reproduce:
1. Choose WindowMaker as window manager for GNOME
2. Start up X/GNOME on multi-head display
3. Wait for panel to appear.


Actual Results:  A message box pops up saying that wmaker has crashed, and
giving the option to restart.


Expected Results:  Panel should appear, and wmaker should not abort :)

Temporary fix for the problem ...

diff --recursive --unified WindowMaker-0.62.1-orig/src/startup.c
WindowMaker-0.62.1/src/startup.c
--- WindowMaker-0.62.1-orig/src/startup.c       Sun Apr  2 22:18:19 2000
+++ WindowMaker-0.62.1/src/startup.c    Mon Mar  5 14:43:05 2001
@@ -585,9 +585,7 @@
        }
     }
 
-    assert("bad_root_window" && 0);
-    
-    return NULL;
+    return wScreenForWindow (window);
 }
 
 
@@ -610,7 +608,7 @@
        }
     }
     
-    return NULL;
+    return wScreenForWindow (window);
 }

Comment 1 Bill Crawford 2001-03-19 18:37:27 UTC
This looks like a fault in the GNOME support in wmaker, as it always happens at
the same time the GNOME panel starts.  Also the band-aid fix I have suggests
that a non-root window (possibly a virtual root) is being passed to the
wScreenForRootWindow function.


Comment 2 Crutcher Dunnavant 2001-04-03 16:36:19 UTC
Please try this with the latest rawhide, and also see if it works without dual
head. Otherwise, I can't seem to reproduce it here.

Comment 3 Bill Crawford 2001-04-03 16:53:40 UTC
It's always worked fine *without* dual head, which is why it took a while to
figure it out.  It always would bomb out on my work system, but *only* when
using GNOME rather than just WindowMaker.

The crunch was realising that it always bombed exactly as the gnome panel
appeared on the screen.

It's not been fixed in Raw Hide to date, as I had to re-patch the latest version
I have (which is WindowMaker-0.62.1-16) when I upgraded it last.  I have no idea
whether the current GNOME environment would trigger the problem, but I suspect
it will.  I may try later.

It's only *dual (or multi) head, when used as the WM with GNOME* that it's a
problem.  Without GNOME (i.e. just running wmaker without the panel and stuff)
it's fine.  On a single head system (at home) it's fine.  And the patch I put up
there fixes it.

I tried, really I did.  That's the only way to do it.  The root cause is
probably the "wrong" window ID being passed to that function as though it were a
root window.  Perhaps it's a "virtual root" which isn't being recognised as
such.  I really don't have the inclination to look, as simply making sure we get
the right screen for the window concerned actually makes wmaker more robust in
the face of possible errors elsewhere in the code or in the GNOME infrastructure
somewhere.


Comment 4 Bill Crawford 2001-04-09 18:18:51 UTC
Yes, this does still happen with the package from Raw Hide:

[bill@fraser bill]$ rpm -q WindowMaker
WindowMaker-0.64.0-2

I start up, the panel appears, it stays a grey block for a while, and the error
dialog pops up saying that WindowMaker has aborted.
I'll be pactching it in a minute.



Comment 5 Bill Crawford 2001-04-09 18:40:02 UTC
Same patch applies clean and fixes the problem for me.

I would guess the bug is most likely related to the GNOME support and either the
panel or one of the applets (I have deskguide and tasklist running).



Note You need to log in before you can comment on or make changes to this bug.