Index: xc/ChangeLog =================================================================== RCS file: /cvs/xorg/xc/ChangeLog,v retrieving revision 1.658 diff -u -2 -0 -r1.658 ChangeLog --- xc/ChangeLog 10 Jan 2005 17:50:32 -0000 1.658 +++ xc/ChangeLog 10 Jan 2005 18:31:31 -0000 @@ -1,20 +1,27 @@ +2005-01-10 Roland Mainz + * xc/programs/Xserver/Xprint/attributes.h + Bugzilla #2254 (https://bugs.freedesktop.org/show_bug.cgi?id=2254) + attachment #xxx (https://bugs.freedesktop.org/attachment.cgi?id=xxx): + Refix for gcc4.0 build failure. It seems that the |ExecCommand()| + function has no consumer and can safely be removed. + 2005-01-10 Egbert Eich * programs/Xserver/hw/xfree86/input/keyboard/kbd.c: (PostKbdEvent): PC keyboards internally generate a different scan code when the ALT modifier is pressed with the SysReq/Print key. Since X expects the same scancode regardless of the modifier the keyboard driver has to 'map the code back'. So far it does so when seeing the SysReq scancode without checking if the modifier is on. If this scancode is also sent by another key on an extended keyboard it receives the same remapping. Fix: Add check for ALT modifier down before doing the remapping (Bugzilla #2255, Helmut Fahrion). 2005-01-10 Roland Mainz * xc/programs/Xserver/Xprint/Util.c * xc/programs/Xserver/Xprint/attributes.h * xc/programs/Xserver/Xprint/ps/Ps.h Bugzilla #2254 (https://bugs.freedesktop.org/show_bug.cgi?id=2254) attachment #1654 (https://bugs.freedesktop.org/attachment.cgi?id=1654): Fix gcc4.0 build failure. Index: xc/programs/Xserver/Xprint/attributes.c =================================================================== RCS file: /cvs/xorg/xc/programs/Xserver/Xprint/attributes.c,v retrieving revision 1.7 diff -u -2 -0 -r1.7 attributes.c --- xc/programs/Xserver/Xprint/attributes.c 3 Jan 2005 15:43:55 -0000 1.7 +++ xc/programs/Xserver/Xprint/attributes.c 10 Jan 2005 18:32:57 -0000 @@ -1067,68 +1067,40 @@ XpSpoolerGetServerAttributes(void) { char *totalAttrs, *localeName; XrmDatabase db; localeName = setlocale(LC_CTYPE, (char *)NULL); if(!localeName || strlen(localeName) == 0) localeName = "C"; if((totalAttrs = (char *)xalloc(strlen(serverAttrStr) + strlen(localeName) + 11)) == (char *)NULL) return (XrmDatabase)NULL; sprintf(totalAttrs, "%s\n%s\t%s", serverAttrStr, "*locale:", localeName); db = XrmGetStringDatabase(totalAttrs); xfree(totalAttrs); return db; } /* - * ExecuteCommand takes two pointers - the command to execute, - * and the "argv" style NULL-terminated vector of arguments for the command. - * We wait for the command to terminate before continuing to ensure that - * we don't delete the job file before the spooler has made a copy. - */ -static void -ExecCommand(pCommand, argVector) - char *pCommand; - char **argVector; -{ - pid_t childPid; - int status; - - if((childPid = fork()) == 0) - { - /* return BadAlloc? */ - if (execv(pCommand, argVector) == -1) { - FatalError("unable to exec '%s'", pCommand); - } - } - else - { - (void) waitpid(childPid, &status, 0); - } - return; -} - -/* * SendFileToCommand takes three character pointers - the file name, * the command to execute, * and the "argv" style NULL-terminated vector of arguments for the command. * The command is exec'd, and the file contents are sent to the command * via stdin. * * WARNING: This function will try to adopt the userId of the supplied * user name prior to exec'ing the supplied command. */ static void SendFileToCommand( char *fileName, char *pCommand, char **argVector, char *userName) { pid_t childPid; int pipefd[2]; int status; struct stat statBuf;