File xfig.3.2.5b-locale.dif of Package xfig

--- main.c
+++ main.c	2013-12-10 13:47:11.675533754 +0000
@@ -61,11 +61,13 @@
 
 /* input extensions for an input tablet */
 #ifdef USE_TAB
-#include "X11/extensions/XInput.h"
+#include <X11/extensions/XInput.h>
 #endif /* USE_TAB */
 
 #ifdef I18N
 #include <X11/keysym.h>
+#include <locale.h>
+#include <langinfo.h>
 #endif  /* I18N */
 
 #include <X11/IntrinsicP.h>
@@ -784,11 +786,6 @@ void main(int argc, char **argv)
 	}
     }
 
-#ifdef I18N
-    setlocale(LC_ALL, "");
-    XtSetLanguageProc(NULL, NULL, NULL);
-#endif  /* I18N */
-
     /*
      * save the command line arguments
      */
@@ -890,6 +887,10 @@ void main(int argc, char **argv)
 		setup_icons_big();
 
 #ifdef I18N
+    if (NULL == strcasestr(nl_langinfo(CODESET),"ANSI") &&
+	NULL == strcasestr(nl_langinfo(CODESET),"ISO-8859-1"))
+	appres.international = True;
+
     /************************************************************/
     /* if the international option has been set, set the locale */
     /************************************************************/
@@ -1612,6 +1613,11 @@ setup_visual(int *argc_p, char **argv, A
 	 */
 	tool = XtAppInitialize (&tool_app, "Fig", options, XtNumber (options), argc_p, argv,
 			       (String *) NULL, args, 0);
+#ifdef I18N
+	setlocale(LC_ALL, "");
+	setlocale(LC_NUMERIC, "C");
+	XtSetLanguageProc(tool_app, NULL, NULL);
+#endif  /* I18N */
 	/* save important info */
 	tool_d = XtDisplay(tool);
 	tool_s = XtScreen(tool);
--- u_print.c
+++ u_print.c	2006-11-16 12:45:46.000000000 +0000
@@ -15,6 +15,7 @@
  *
  */
 
+#include <locale.h>
 #include "fig.h"
 #include "resources.h"
 #include "object.h"