diff options
author | Jeremy Laine <jeremy.laine@m4x.org> | 2008-05-06 14:15:28 +0000 |
---|---|---|
committer | Jeremy Laine <jeremy.laine@m4x.org> | 2008-05-06 14:15:28 +0000 |
commit | 8b04d480e64d6830e061be32aa3b2fec67e40fa2 (patch) | |
tree | 9f12e8331eba146d375a45b2c31ddb149c133a29 | |
parent | af3d7051e4e2263b884561d70b863374872a9dfd (diff) |
gpm_1.20.1.bb: fix references to OPEN_MAX (Closes: #3762)
-rw-r--r-- | packages/gpm/gpm-1.20.1/gpm-OPEN_MAX.patch | 46 | ||||
-rw-r--r-- | packages/gpm/gpm_1.20.1.bb | 3 |
2 files changed, 48 insertions, 1 deletions
diff --git a/packages/gpm/gpm-1.20.1/gpm-OPEN_MAX.patch b/packages/gpm/gpm-1.20.1/gpm-OPEN_MAX.patch new file mode 100644 index 0000000000..6fa86e1168 --- /dev/null +++ b/packages/gpm/gpm-1.20.1/gpm-OPEN_MAX.patch @@ -0,0 +1,46 @@ +Index: gpm-1.20.1/src/prog/gpm-root.y +=================================================================== +--- gpm-1.20.1.orig/src/prog/gpm-root.y ++++ gpm-1.20.1/src/prog/gpm-root.y +@@ -44,7 +44,6 @@ + #include <sys/stat.h> /* fstat() */ + #include <sys/utsname.h> /* uname() */ + #include <termios.h> /* winsize */ +-#include <linux/limits.h> /* OPEN_MAX */ + #include <linux/vt.h> /* VT_ACTIVATE */ + #include <linux/keyboard.h> /* K_SHIFT */ + #include <utmp.h> +@@ -525,7 +524,9 @@ int f_bgcmd(int mode, DrawItem *self, in + open("/dev/null",O_RDONLY); /* stdin */ + open(consolename,O_WRONLY); /* stdout */ + dup(1); /* stderr */ +- for (i=3;i<OPEN_MAX; i++) close(i); ++ int open_max = sysconf(_SC_OPEN_MAX); ++ if (open_max == -1) open_max = 1024; ++ for (i=3;i<open_max; i++) close(i); + execl("/bin/sh","sh","-c",self->arg,(char *)NULL); + exit(1); /* shouldn't happen */ + default: return 0; +Index: gpm-1.20.1/src/special.c +=================================================================== +--- gpm-1.20.1.orig/src/special.c ++++ gpm-1.20.1/src/special.c +@@ -25,7 +25,6 @@ + + /* This file is compiled conditionally, see the Makefile */ + +-#include <linux/limits.h> /* for OPEN_MAX */ + #include <stdio.h> + #include <stdlib.h> + #include <string.h> +@@ -155,7 +154,9 @@ int processSpecial(Gpm_Event *event) + open(GPM_NULL_DEV,O_RDONLY); /* stdin */ + open(option.consolename,O_WRONLY); /* stdout */ + dup(1); /* stderr */ +- for (i=3;i<OPEN_MAX; i++) close(i); ++ int open_max = sysconf(_SC_OPEN_MAX); ++ if (open_max == -1) open_max = 1024; ++ for (i=3;i<open_max; i++) close(i); + execl("/bin/sh","sh","-c",command,(char *)NULL); + exit(1); /* shouldn't happen */ + diff --git a/packages/gpm/gpm_1.20.1.bb b/packages/gpm/gpm_1.20.1.bb index c017cafc9a..5b278b7cee 100644 --- a/packages/gpm/gpm_1.20.1.bb +++ b/packages/gpm/gpm_1.20.1.bb @@ -5,12 +5,13 @@ SECTION = "console/utils" LICENSE = "GPL" DEPENDS = "ncurses" -PR = "r2" +PR = "r3" PARALLEL_MAKE = "" SRC_URI = "ftp://arcana.linux.it/pub/gpm/gpm-${PV}.tar.bz2 \ file://configure.patch;patch=1 \ file://no-docs.patch;patch=1 \ + file://gpm-OPEN_MAX.patch;patch=1 \ file://init" inherit autotools update-rc.d |