svn commit: r224766 - user/gabor/tre-integration/contrib/tre/lib

Gabor Kovesdan gabor at FreeBSD.org
Wed Aug 10 21:32:13 UTC 2011


Author: gabor
Date: Wed Aug 10 21:32:13 2011
New Revision: 224766
URL: http://svn.freebsd.org/changeset/base/224766

Log:
  - TRE-specific changes to support better those systems that do not have
    wchar-support

Modified:
  user/gabor/tre-integration/contrib/tre/lib/fastmatch.c

Modified: user/gabor/tre-integration/contrib/tre/lib/fastmatch.c
==============================================================================
--- user/gabor/tre-integration/contrib/tre/lib/fastmatch.c	Wed Aug 10 20:52:02 2011	(r224765)
+++ user/gabor/tre-integration/contrib/tre/lib/fastmatch.c	Wed Aug 10 21:32:13 2011	(r224766)
@@ -32,8 +32,10 @@
 #include <stdbool.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef TRE_WCHAR
 #include <wchar.h>
 #include <wctype.h>
+#endif
 
 #include "fastmatch.h"
 #include "hashtable.h"
@@ -138,7 +140,7 @@ static int	fastcmp(const void *, const v
 		mismatch -= u;						\
 	      v = fg->wlen - 1 - mismatch;				\
 	      r = hashtable_get(fg->qsBc_table,				\
-		&((wchar_t *)startptr)[mismatch + 1], &bc);		\
+		&((tre_char_t *)startptr)[mismatch + 1], &bc);		\
 	      gs = fg->bmGs[mismatch];					\
 	    }								\
 	    bc = (r == 0) ? bc : fg->defBc;				\
@@ -228,7 +230,7 @@ static int	fastcmp(const void *, const v
     hashtable_put(fg->qsBc_table, &fg->wpattern[i], &k);		\
     if (fg->icase)							\
       {									\
-	wint_t wc = iswlower(fg->wpattern[i]) ?				\
+	tre_char_t wc = iswlower(fg->wpattern[i]) ?			\
 	  towupper(fg->wpattern[i]) : towlower(fg->wpattern[i]);	\
 	hashtable_put(fg->qsBc_table, &wc, &k);				\
       }									\
@@ -251,13 +253,13 @@ static int	fastcmp(const void *, const v
 #define _FILL_BMGS(arr, pat, plen, wide)				\
   {									\
     char *p;								\
-    wchar_t *wp;							\
+    tre_char_t *wp;							\
 									\
     if (wide)								\
       {									\
 	if (fg->icase)							\
 	  {								\
-	    wp = alloca(plen * sizeof(wint_t));				\
+	    wp = alloca(plen * sizeof(tre_char_t));			\
 	    for (int i = 0; i < plen; i++)				\
 	      wp[i] = towlower(pat[i]);					\
 	    _CALC_BMGS(arr, wp, plen);					\
@@ -446,9 +448,7 @@ tre_fastexec(const fastmatch_t *fg, cons
   int mismatch, shift, u = 0, v;
   const char *str_byte = data;
   const void *startptr = NULL;
-#ifdef TRE_WCHAR
-  const wchar_t *str_wide = data;
-#endif
+  const tre_char_t *str_wide = data;
 
   if (len == (unsigned)-1)
     switch (type)
@@ -532,10 +532,8 @@ fastcmp(const void *pat, const void *dat
   const char *str_byte = data;
   const char *pat_byte = pat;
   int ret = REG_OK;
-#ifdef TRE_WCHAR
-  const wchar_t *str_wide = data;
-  const wchar_t *pat_wide = pat;
-#endif
+  const tre_char_t *str_wide = data;
+  const tre_char_t *pat_wide = pat;
 
   for (int i = len - 1; i >= 0; i--) {
     switch (type)


More information about the svn-src-user mailing list