From a7a81061be488c34b75c02ee24c08973e2b11fb1 Mon Sep 17 00:00:00 2001
From: engelsman <engelsman>
Date: Sun, 18 Apr 2010 18:38:13 +0000
Subject: [PATCH] tweaked fl_wcwidth.c and mk_wcwidth.c to supercede system
 wchar_t

fl_wcwidth.c has a typedef unsigned int wchar_t; and
mk_wcwidth.c has an #if 0 to stop #include <wchar.h>



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7530 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
---
 src/xutf8/fl_wcwidth.c |  4 +++-
 src/xutf8/mk_wcwidth.c | 13 +++++++++++++
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/src/xutf8/fl_wcwidth.c b/src/xutf8/fl_wcwidth.c
index 5e03caddb..005ade003 100644
--- a/src/xutf8/fl_wcwidth.c
+++ b/src/xutf8/fl_wcwidth.c
@@ -30,7 +30,9 @@
  * forward declare the routines as static to avoid name leakage.
  */
 
-#include <wchar.h>
+#include <stdio.h>              /* for size_t only */
+typedef unsigned int wchar_t;   /* supercede system wchar_t */
+
 static int mk_wcwidth(wchar_t ucs);
 static int mk_wcswidth(const wchar_t *pwcs, size_t n);
 static int mk_wcwidth_cjk(wchar_t ucs);
diff --git a/src/xutf8/mk_wcwidth.c b/src/xutf8/mk_wcwidth.c
index 61e822ad6..c0bebaecc 100644
--- a/src/xutf8/mk_wcwidth.c
+++ b/src/xutf8/mk_wcwidth.c
@@ -1,3 +1,9 @@
+/*
+ * Important!
+ * This file should remain as close to Markus Kuhn's original source
+ * as possible for easy checking for changes later, however unlikely.
+ * All customisations to work with FLTK shall be annotated!
+ */
 /*
  * This is an implementation of wcwidth() and wcswidth() (defined in
  * IEEE Std 1002.1-2001) for Unicode.
@@ -59,7 +65,14 @@
  * Latest version: http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
  */
 
+/*
+ * FLTK - avoid possible problems on systems with 32-bit wchar_t.
+ *        In the first instance, wchar_t is superceded in calling file
+ *        to avoid any unnecessary changes in this one.
+ */
+#if 0
 #include <wchar.h>
+#endif
 
 struct interval {
   int first;
-- 
GitLab