File gnuplot-4.6.0-fonts.diff of Package gnuplot.38691

diff -upr ../gnuplot-4.6.2.orig/src/gplt_x11.c ./src/gplt_x11.c
--- ../gnuplot-4.6.2.orig/src/gplt_x11.c	2013-03-31 23:35:15.000000000 +0200
+++ ./src/gplt_x11.c	2013-03-31 23:35:57.000000000 +0200
@@ -104,15 +104,16 @@ static char *RCSid() { return RCSid("$Id
  * patches by Masahito Yamaga <ma@yama-ga.com>
  */
 
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
+#include <string.h>
 #include <X11/Xos.h>
 #include <X11/Xlib.h>
 #include <X11/Xresource.h>
 #include <X11/Xutil.h>
 #include <X11/Xatom.h>
 #include <X11/keysym.h>
-#ifdef USE_X11_MULTIBYTE
-# include <X11/Xlocale.h>
-#endif
 
 #include <assert.h>
 #include "syscfg.h"
@@ -122,6 +123,12 @@ static char *RCSid() { return RCSid("$Id
 #include "gplt_x11.h"
 #include "version.h"
 
+#ifdef USE_X11_MULTIBYTE
+# include <locale.h>
+# include <langinfo.h>
+# include <X11/Xlocale.h>
+#endif
+
 #ifdef EXPORT_SELECTION
 # undef EXPORT_SELECTION
 #endif /* EXPORT SELECTION */
@@ -482,7 +489,7 @@ static double mouse_to_axis __PROTO((int
 static char *FallbackFont = "fixed";
 #ifdef USE_X11_MULTIBYTE
 static char *FallbackFontMB =
-    "mbfont:*-medium-r-normal--14-*;*-medium-r-normal--16-*";
+    "mbfont:*-medium-r-normal--14-*,*-medium-r-normal--16-*";
 # define FontSetSep ';'
 static int usemultibyte = 0;
 static int multibyte_fonts_usable=1;
@@ -499,8 +506,8 @@ static char *gpFallbackFont __PROTO((voi
 static int gpXGetFontascent __PROTO((XFontStruct *cfont));
 
 enum set_encoding_id encoding = S_ENC_DEFAULT; /* EAM - mirrored from core code by 'QE' */
-static char default_font[64] = { '\0' };
-static char default_encoding[16] = { '\0' };
+static char default_font[256] = { '\0' };
+static char default_encoding[64] = { '\0' };
 
 #define Nwidths 10
 static unsigned int widths[Nwidths] = { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
@@ -2116,6 +2123,8 @@ exec_cmd(plot_struct *plot, char *comman
 		/* Save the request default font */
 		c = &(buffer[strlen(buffer)-1]);
 		while (*c <= ' ') *c-- = '\0';
+		if (strlen(&buffer[2]) == 0)
+			break;
 		strncpy(default_font, &buffer[2], strlen(&buffer[2])+1);
 		FPRINTF((stderr, "gnuplot_x11: exec_cmd() set default_font to \"%s\"\n", default_font));
 		break;
@@ -5397,7 +5406,7 @@ XFontStruct *gpXLoadQueryFont (Display *
 	    }
 #else
 	    if (first_time) {
-		fprintf(stderr,"gnuplot_x11: Some character sets not available\n");
+		FPRINTF(("gnuplot_x11: Some character sets not available\n"));
 		first_time = FALSE;
 	    }
 	    while (n_miss-- > 0)
@@ -5492,6 +5501,18 @@ char *fontname;
     }
 
 #ifdef USE_X11_MULTIBYTE
+    if ((!fontname || !(*fontname)) && multibyte_fonts_usable) {
+	const char * codeset = nl_langinfo(CODESET);
+	if (strcasestr(codeset, "UTF-8")) {
+		const char* utf8 = "mbfont:-*-sazanami*mincho-medium-r-normal--16-* \
+-*-mincho-medium-r-normal--16-*,-*-verdana-medium-r-normal--16-* \
+-*-dejavu*sans-medium-r-normal--16-*,-*-medium-r-normal--16-*";
+		strncpy(default_font, utf8, strlen(utf8)+1);
+	}
+    }
+#endif
+
+#ifdef USE_X11_MULTIBYTE
     if (fontname && strncmp(fontname, "mbfont:", 7) == 0) {
 	if (multibyte_fonts_usable) {
 	    usemultibyte = 1;
Nur in ./src: gplt_x11.c.orig.
diff -upr ../gnuplot-4.6.2.orig/src/variable.c ./src/variable.c
--- ../gnuplot-4.6.2.orig/src/variable.c	2013-03-31 23:35:15.000000000 +0200
+++ ./src/variable.c	2013-03-31 23:35:57.000000000 +0200
@@ -282,6 +282,8 @@ static const struct path_table fontpath_
     { "$`kpsexpand '$TEXMFDIST'`/fonts/type1!" },
 #endif
     /* Linux paths */
+    { "/usr/share/fonts/Type1" },
+    { "/usr/share/fonts/truetype" },
     { "/usr/X11R6/lib/X11/fonts/Type1" },
     { "/usr/X11R6/lib/X11/fonts/truetype" },
     /* HP-UX */
openSUSE Build Service is sponsored by