]> gitweb.factorcode.org Git - factor.git/commitdiff
pcre: fix bug with macosx .
authorJohn Benediktsson <mrjbq7@gmail.com>
Wed, 20 Nov 2013 20:53:13 +0000 (12:53 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Wed, 20 Nov 2013 20:53:13 +0000 (12:53 -0800)
extra/pcre/ffi/ffi.factor
extra/pcre/info/info.factor

index 5985ef3c798185172fbd1e38fdb043379bf16222..3bba6dc95b81002b35d3633e85cf1632893246b4 100644 (file)
@@ -137,15 +137,15 @@ CONSTANT: PCRE_CONFIG_UTF16                  10
 CONSTANT: PCRE_CONFIG_JITTARGET              11
 CONSTANT: PCRE_CONFIG_UTF32                  12
 
-
 STRUCT: pcre_extra
-    { flags int }
+    { flags ulonglong }
     { study_data void* }
-    { match_limit long }
+    { match_limit ulonglong }
     { callout_data void* }
     { tables uchar* }
-    { match_limit_recursion int }
-    { mark uchar** } ;
+    { match_limit_recursion ulonglong }
+    { mark uchar** }
+    { executable_jit void* } ;
 
 FUNCTION: void pcre_config ( int what, void* where ) ;
 
index 29a4c40436f2cc0353652b1e5ed8acd3f6cfd9a0..faad07969ceb04ac592b1423ad6306628f835136 100644 (file)
@@ -4,7 +4,7 @@ USING:
     arrays
     io.encodings.utf8
     kernel
-    math
+    math math.bitwise
     pcre.ffi pcre.utils
     sequences ;
 IN: pcre.info
@@ -17,18 +17,20 @@ IN: pcre.info
     PCRE_INFO_NAMECOUNT fullinfo ;
 
 : name-table ( pcre extra -- addr )
-    PCRE_INFO_NAMETABLE fullinfo ;
+    [ drop alien-address 32 on-bits unmask ]
+    [ PCRE_INFO_NAMETABLE fullinfo ] 2bi + ;
 
 : name-entry-size ( pcre extra -- size )
     PCRE_INFO_NAMEENTRYSIZE fullinfo ;
 
 : name-table-entry ( addr -- group-index group-name )
-    [ <alien> 1 alien-unsigned-1 ] [ 2 + <alien> utf8 alien>string ] bi ;
+    [ <alien> 1 alien-unsigned-1 ]
+    [ 2 + <alien> utf8 alien>string ] bi ;
 
 : options ( pcre -- opts )
     f PCRE_INFO_OPTIONS fullinfo ;
 
 ! Exported
 : name-table-entries ( pcre extra -- addrs )
-    [ name-table ] [ name-entry-size ] [ name-count ] 2tri gen-array-addrs
-    [ name-table-entry 2array ] map ;
+    [ name-table ] [ name-entry-size ] [ name-count ] 2tri
+    gen-array-addrs [ name-table-entry 2array ] map ;