Bug 97359 - OGL 3D Xscreensavers seg-fault using ATI drivers
OGL 3D Xscreensavers seg-fault using ATI drivers
Status: CLOSED RAWHIDE
Product: Red Hat Raw Hide
Classification: Retired
Component: xscreensaver (Show other bugs)
1.0
ia64 Linux
medium Severity medium
: ---
: ---
Assigned To: Bill Nottingham
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2003-06-13 12:42 EDT by John Fujii
Modified: 2014-03-16 22:36 EDT (History)
1 user (show)

See Also:
Fixed In Version: 4.10-3
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2003-06-13 15:25:06 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
IA64 Xscreensaver patch for Var Args NULL problem (512 bytes, patch)
2003-06-13 12:44 EDT, John Fujii
no flags Details | Diff

  None (edit)
Description John Fujii 2003-06-13 12:42:43 EDT
Description of problem:

Var Args problem in function call.  On 64-bit boxes, the NULL is not
correctly promoted causing a segmentation fault during execution of
a number of 3D OpenGL Xscreensavers.

Version-Release number of selected component (if applicable):

We've seen this on AW 2.1 and the current Taroon Bits - probably
should be cross listed and fixed in both.

Note: this means Advanced Workstation 2.1 and Advanced Workstation 3.0
           for IA64 only

How reproducible:

Currently most reproducible with an OEM 3D graphics driver, although 
debuggers can also show the problem

---

Problem occurs in module hacks/screenhack.c at line 673:

          new = XtVaAppCreateShell (progname, progclass,
                                    topLevelShellWidgetClass, dpy,
                                    .....
                                    XtNinput, True,  /* for WM_HINTS */
                                    0);

The trailing "0" (NULL) does not get correctly promoted to a
64-bit NULL on IA64.  Thus, we get a segmentation fault under
an IA64 run under certain conditions.  The segmentation error
occurs in libXt in the call XtVaAppCreateShell().

Recommend making "0" be cast explicitly to long constant (as in "0L")
for IA64.

Thus, this becomes:

          new = XtVaAppCreateShell (progname, progclass,
                                    topLevelShellWidgetClass, dpy,
                                    .....
                                    XtNinput, True,  /* for WM_HINTS */
                                    0L);
Comment 1 John Fujii 2003-06-13 12:44:39 EDT
Created attachment 92389 [details]
IA64 Xscreensaver patch for Var Args NULL problem

This is a proposed potential fix for the described condition.
Comment 2 Bill Nottingham 2003-06-13 15:25:06 EDT
Fixed in 4.10-3, thx. Just changed it from 0L to NULL.

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