Description: Replace BSD-specific sys_signame with GNU-specific strsignal
Forwarded: not-needed
Author: Matej Vela <vela@debian.org>
Author: Lukas Märdian <slyon@ubuntu.com>
Last-Update: 2021-04-23

Index: csh-20110502/proc.c
===================================================================
--- csh-20110502.orig/proc.c
+++ csh-20110502/proc.c
@@ -945,16 +951,22 @@
 		signum = atoi(short2str(v[1]));
 		if (signum < 0 || signum >= NSIG)
 		    stderror(ERR_NAME | ERR_BADSIG);
-		else if (signum == 0)
-		    (void) fputc('0', cshout); /* 0's symbolic name is '0' */
+		else if (strsignal(signum) == NULL)
+		    (void) fprintf(cshout, "%d", signum);
 		else
-		    (void) fprintf(cshout, "%s ", sys_signame[signum]);
+		    (void) fprintf(cshout, "%s ", strsignal(signum));
 	    } else {
-		for (signum = 1; signum < NSIG; signum++) {
-		    (void) fprintf(cshout, "%s ", sys_signame[signum]);
-		    if (signum == NSIG / 2)
-			(void) fputc('\n', cshout);
-	    	}
+	        int cur = 0, len;
+		for (signum = 1; signum < NSIG; signum++)
+		    if (strsignal(signum)) {
+			len = strlen(strsignal(signum)) + 1;
+			cur += len;
+			if (cur >= 80 - 1) {
+			    (void) fputc('\n', cshout);
+			    cur = len;
+			}
+			(void) fprintf(cshout, "%s ", strsignal(signum));
+		    }
 	    }
 	    (void) fputc('\n', cshout);
 	    return;
@@ -978,9 +990,10 @@
 	    }
 
 	    for (signum = 1; signum < NSIG; signum++)
-		if (!strcasecmp(sys_signame[signum], name) ||
-		    (strlen(name) > 3 && !strncasecmp("SIG", name, 3) &&
-		     !strcasecmp(sys_signame[signum], name + 3)))
+		if (strsignal(signum) && \
+		    (!strcasecmp(strsignal(signum), name) ||
+		     (strlen(name) > 3 && !strncasecmp("SIG", name, 3) &&
+		      !strcasecmp(strsignal(signum), name + 3))))
 			break;
 
 	    if (signum == NSIG) {
