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);
Created attachment 92389 [details] IA64 Xscreensaver patch for Var Args NULL problem This is a proposed potential fix for the described condition.
Fixed in 4.10-3, thx. Just changed it from 0L to NULL.