aboutsummaryrefslogtreecommitdiff
path: root/editors/nvi/patches/nvi-23-debian_alternatives.patch
blob: 5614041ed21961f27457cb9961e574a4bf77c937 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#! /bin/sh /usr/share/dpatch/dpatch-run
## 23debian_alternatives.dpatch by  <hesso@pool.math.tu-berlin.de>
##
## DP: Adapt the internal program name if nvi was called via one of
## DP: the Debian alternative symlinks.

@DPATCH@
diff -Naur nvi-1.81.6.orig/common/gs.c nvi-1.81.6/common/gs.c
--- nvi-1.81.6.orig/common/gs.c	2007-11-18 17:41:42.000000000 +0100
+++ nvi-1.81.6/common/gs.c	2008-05-01 18:28:44.000000000 +0200
@@ -45,6 +45,24 @@
 
 	gp->progname = name;
 
+#ifdef DEBIAN
+	/* This is because of the Debian alternatives system. The
+	   definitions of editor, vi, view, and ex are transient. This
+	   would be ok, except that the recovery file hardcodes the
+	   name. The downside of this is that the error messages may
+	   not quite match what the user expects */
+
+	if (!strcmp(name, "editor")) {
+	  gp->progname = "nvi";
+	} else if (!strcmp(name, "vi")){
+	  gp->progname = "nvi";
+	} else if (!strcmp(name, "view")){
+	  gp->progname = "nview";
+	} else if (!strcmp(name, "ex")){
+	  gp->progname = "nex";
+	} 
+#endif   /* DEBIAN */
+
 	/* Common global structure initialization. */
 	/* others will need to be copied from main.c */
 	CIRCLEQ_INIT(&gp->dq);