Blob Blame History Raw
---
 gnuplot-5.4.0/docs/Makefile.am |   12 ++++++++----
 gnuplot-5.4.0/src/gadgets.h    |    2 +-
 gnuplot-5.4.0/src/gplt_x11.c   |    9 ++++++---
 gnuplot-5.4.0/src/plot.c       |   22 +++++++++++++++++++++-
 gnuplot-5.4.0/src/term.h       |    6 +++---
 5 files changed, 39 insertions(+), 12 deletions(-)

--- gnuplot-5.4.0/docs/Makefile.am
+++ gnuplot-5.4.0/docs/Makefile.am	2020-07-17 07:25:36.834034450 +0000
@@ -42,7 +42,7 @@
 #
 
 # default is what is needed for interactive gnuplot
-gih_DATA = gnuplot.gih
+gih_DATA = gnuplot.gih gnuplot-fr.gih
 gihdir = @GIHDIR@
 
 noinst_PROGRAMS = checkdoc doc2ipf doc2tex doc2gih doc2rnh doc2hlp	\
@@ -101,7 +101,7 @@ gnuplot-groff.ps gnuplot.tmp VERSION gnu
 gnuplot.idv gnuplot.xref gnuplot.lg gnuplot.pdf wxhelp_figures		\
 wxhelp/*.html wxhelp/wgnuplot.hhc wxhelp/wgnuplot.hhk			\
 wxhelp/wgnuplot.htc wxhelp/doc2html$(EXEEXT) windows/wgnuplot.htk	\
-windows/*.png gnuplot.htb gnuplot.texi gnuplot-eldoc.el $(ELCS)
+windows/*.png gnuplot.htb gnuplot.texi gnuplot-eldoc.el $(ELCS) gnuplot-fr.gih
 
 DISTFILES = $(DIST_COMMON) $(SOURCES) $(DOCHEADERS) $(EXTRA_DIST)
 
@@ -262,17 +262,21 @@ gnuplot.hlp: doc2hlp$(EXEEXT) $(srcdir)/
 doc2hlp_SOURCES = doc2hlp.c termdoc.c
 
 ### gnuplot interactive help format
-gih: gnuplot.gih
+gih: gnuplot.gih gnuplot-fr.gih
 
 gnuplot.gih: doc2gih$(EXEEXT) $(srcdir)/gnuplot.doc
 	$(AM_V_GEN)./doc2gih$(EXEEXT) $(srcdir)/gnuplot.doc gnuplot.gih
 
+gnuplot-fr.gih: doc2gih$(EXEEXT) $(srcdir)/gnuplot-fr.doc
+	$(AM_V_GEN)./doc2gih$(EXEEXT) $(srcdir)/gnuplot-fr.doc gnuplot-fr.gih
+
 doc2gih_SOURCES = doc2gih.c termdoc.c
 
 # To include all terminals in the .gih file
-allgih: alldoc2gih$(EXEEXT) $(srcdir)/gnuplot.doc
+allgih: alldoc2gih$(EXEEXT) $(srcdir)/gnuplot.doc $(srcdir)/gnuplot-fr.doc
 	@echo "generate gnuplot.gih with all terminals"
 	$(AM_V_at)./alldoc2gih$(EXEEXT) $(srcdir)/gnuplot.doc gnuplot.gih
+	$(AM_V_at)./alldoc2gih$(EXEEXT) $(srcdir)/gnuplot-fr.doc gnuplot-fr.gih
 
 alldoc2gih_SOURCES = doc2gih.c termdoc.c
 alldoc2gih_CPPFLAGS = -DALL_TERM_DOC $(AM_CPPFLAGS)
--- gnuplot-5.4.0/src/gadgets.h
+++ gnuplot-5.4.0/src/gadgets.h	2020-07-17 07:27:48.183763305 +0000
@@ -522,7 +522,7 @@ extern TBOOLEAN	clip_lines2;
 extern TBOOLEAN	clip_points;
 extern TBOOLEAN	clip_radial;
 
-#define SAMPLES 100		/* default number of samples for a plot */
+#define SAMPLES 500		/* default number of samples for a plot */
 extern int samples_1;
 extern int samples_2;
 
--- gnuplot-5.4.0/src/gplt_x11.c
+++ gnuplot-5.4.0/src/gplt_x11.c	2020-07-17 07:25:36.834034450 +0000
@@ -2513,9 +2513,12 @@ exec_cmd(plot_struct *plot, char *comman
 	}
     }
     /*   X11_justify_text(mode) - set text justification mode  */
-    else if (*buffer == 'J')
-	sscanf(buffer, "J%d", (int *) &plot->jmode);
-
+    else if (*buffer == 'J') {
+	int jmode;
+	sscanf(buffer, "J%d", &jmode);
+	plot->jmode = jmode;
+    }
+ 
     else if (*buffer == 'A')
 	sscanf(buffer + 1, "%lf", &plot->angle);
 
--- gnuplot-5.4.0/src/plot.c
+++ gnuplot-5.4.0/src/plot.c	2020-07-17 07:28:52.762646614 +0000
@@ -206,6 +206,7 @@ static int asked_privi = 0;
 void
 drop_privilege()
 {
+#ifndef SVGA_IS_SECURE
     if (!asked_privi) {
 	euid = geteuid();
 	egid = getegid();
@@ -219,11 +220,13 @@ drop_privilege()
     if (seteuid(ruid) == -1)
 	(void) fprintf(stderr, "seteuid(%d): %s\n",
 		       (int) ruid, strerror(errno));
+#endif
 }
 
 void
 take_privilege()
 {
+#ifndef SVGA_IS_SECURE
     if (!asked_privi) {
 	euid = geteuid();
 	egid = getegid();
@@ -237,6 +240,7 @@ take_privilege()
     if (seteuid(euid) == -1)
 	(void) fprintf(stderr, "seteuid(%d): %s\n",
 		       (int) euid, strerror(errno));
+#endif
 }
 
 #endif /* LINUXVGA */
@@ -272,8 +276,8 @@ main(int argc_orig, char **argv)
     argc = argc_orig;
 
 #ifdef LINUXVGA
-    LINUX_setup();		/* setup VGA before dropping privilege DBT 4/5/99 */
     drop_privilege();
+    LINUX_setup();		/* setup VGA before dropping privilege DBT 4/5/99 */
 #endif
 /* make sure that we really have revoked root access, this might happen if
    gnuplot is compiled without vga support but is installed suid by mistake */
@@ -346,6 +350,22 @@ main(int argc_orig, char **argv)
     rl_getc_function = getc_wrapper;
 #endif
 
+#ifdef __linux__
+    if (!getenv("GNUHELP")) {
+	const char* msg = setlocale(LC_MESSAGES, NULL);
+	if (msg) {
+	    char hfile[64];
+	    struct stat buf;
+
+	    sprintf(hfile, "/usr/share/gnuplot/%s/gnuplot-", gnuplot_version);
+	    strncat(hfile, msg, 2);
+	    strcat (hfile, ".gih");
+	    if (stat(hfile, &buf) == 0)
+		setenv("GNUHELP", strdup(hfile), 0);
+	}
+    }
+#endif
+
 #if defined(HAVE_LIBREADLINE) || defined(HAVE_LIBEDITLINE)
     /* T.Walter 1999-06-24: 'rl_readline_name' must be this fix name.
      * It is used to parse a 'gnuplot' specific section in '~/.inputrc'
--- gnuplot-5.4.0/src/term.h
+++ gnuplot-5.4.0/src/term.h	2020-07-17 07:25:36.838034380 +0000
@@ -242,9 +242,9 @@
 #include "emf.trm"
 
 /* Roland DXY800A plotter */
-/* #include "dxy.trm" */
+#include "dxy.trm"
 /* QMS/EXCL laserprinter (Talaris 1590 and others) */
-/* #include "excl.trm" */
+#include "excl.trm"
 
 /* fig graphics */
 #include "fig.trm"
@@ -277,7 +277,7 @@
 /* #include "imagen.trm" */
 
 /* Kyocera Prescribe printer */
-/* #include "kyo.trm" */
+#include "kyo.trm"
 
 /* Frame Maker MIF 3.00 format driver */
 #ifdef HAVE_MIF