summaryrefslogtreecommitdiff
path: root/lang/scsh/files/patch-af
diff options
context:
space:
mode:
authorAlexander Langer <alex@FreeBSD.org>2000-07-19 14:54:42 +0000
committerAlexander Langer <alex@FreeBSD.org>2000-07-19 14:54:42 +0000
commit54f9fd8835f0e13c9919fcc83c1ba3789ced1d19 (patch)
tree82c81cf1bfe65967c55f461ba5628aa4125de1b5 /lang/scsh/files/patch-af
parentRespect CXX/CXXFLAGS (diff)
- Add support for sigset_t - changes.
- Claim maintainership. Approved by: cracauer
Notes
Notes: svn path=/head/; revision=30875
Diffstat (limited to '')
-rw-r--r--lang/scsh/files/patch-af26
1 files changed, 26 insertions, 0 deletions
diff --git a/lang/scsh/files/patch-af b/lang/scsh/files/patch-af
new file mode 100644
index 000000000000..5db2627b7de6
--- /dev/null
+++ b/lang/scsh/files/patch-af
@@ -0,0 +1,26 @@
+--- scsh/bsd/sigset.h.old Tue Feb 1 16:04:42 2000
++++ scsh/bsd/sigset.h Fri Feb 4 14:54:18 2000
+@@ -2,9 +2,18 @@
+ ** These macros are OS-dependent, and must be defined per-OS.
+ */
+
+-#define make_sigset(maskp, hi, lo) (*maskp=((hi)<<24)|(lo))
++#define make_sigset(maskp, hi, lo) sigemptyset(maskp),\
++ sigaddset(maskp, hi), \
++ sigaddset(maskp, lo);
+
+-/* Not a procedure: */
+-#define split_sigset(mask, hip, lop) \
+- ((*(hip)=(mask>>24)&0xff), \
+- (*(lop)=(mask&0xffffff)))
++static void
++split_sigset(sigset_t mask, int * hip, int * lop) {
++ int seen = 0;
++ int n;
++ for (n = 1; n <= _SIG_MAXSIG; n++) {
++ if (sigismember(&mask, n))
++ (seen ? *hip : *lop) = n, seen++;
++ }
++ if (seen == 1)
++ *hip = 0;
++}