Thanks, problem fixed.  And yeah, there were a few more places where similar 
changes were 
needed.
The identity of the fix in the repository is 
bd34993b7eba4f200ebb0f7bb90178a80282a54d

> [EMAIL PROTECTED] - Fri Dec 15 20:24:19 2006]:
> 
> Hi,
> 
> ctwm 3.7 crashes on startup on 64-bit sparcs.  The backtrace is:
> 
>   #0  0x000000004136a16c in _XData32 () from
> /usr/X11R6/lib/libX11.so.6
>   #1  0x0000000041390a84 in XChangeProperty () from
> /usr/X11R6/lib/libX11.so.6
>   #2  0x0000000000141ea8 in InitGnome () at gnome.c:70
>   #3  0x00000000001105cc in main (argc=<value optimized out>,
> 
> This is the because the variable `curws' that is passed to
> XChangeProperty()
> is an int not a long.  The X code deferences the variable as a long
> and on
> a 64-bit sparc this must be aligned on an 8-byte boundary.  Because it
> is
> an int, it is aligned on a 4-byte boundary, causing a bus error.
> 
> Also, the manual page for XChangeProperty says:
> 
>   "If the specified format is 32, the property data must be a long
> array."
> 
> The fix is trivial and is appended.
> 
> I haven't checked for any other similar errors.
> 
> Thanks,
> 
> J
> 
>   - - 8< - - - - - - - - - - - - - Cut here - - - - - - - - - - - - -
> >8 - -
> --- gnome.c.dist      2005-06-21 05:35:19.000000000 +0000
> +++ gnome.c   2006-12-15 11:24:46.000000000 +0000
> @@ -23,7 +23,7 @@
> 
> 
>  void InitGnome (void) {
> -  int curws = 1;
> +  long curws = 1;
>    virtualScreen *vs;
>    Atom _XA_WIN_SUPPORTING_WM_CHECK, _XA_WIN_PROTOCOLS,
>      _XA_WIN_PROTOCOLS_LIST[PROTOCOLS_COUNT],
> _XA_WIN_DESKTOP_BUTTON_PROXY;
>   - - 8< - - - - - - - - - - - - - Cut here - - - - - - - - - - - - -
> >8 - -
> 
> 
> 
-- 
-- 
Richard Levitte                         [EMAIL PROTECTED]
                                        http://richard.levitte.org/

"When I became a man I put away childish things, including
 the fear of childishness and the desire to be very grown up."
                                                -- C.S. Lewis





Reply via email to