about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-05-29 08:39:52 +0200
committerptitSeb <sebastien.chev@gmail.com>2024-05-29 08:39:52 +0200
commit6e22f4fd6d56a62025cafe2076b851c730492cef (patch)
tree325e82ed7ea0dceebc148189f32fff628239877e /src
parent0e3d92148b0c09ffb46972f6aec7272bb5f0ce24 (diff)
downloadbox64-6e22f4fd6d56a62025cafe2076b851c730492cef.tar.gz
box64-6e22f4fd6d56a62025cafe2076b851c730492cef.zip
Added one xslt wrapped constant (for #1534)
Diffstat (limited to 'src')
-rw-r--r--src/include/globalsymbols.h4
-rw-r--r--src/librarian/globalsymbols.c16
-rw-r--r--src/wrapped/generated/functions_list.txt2
-rw-r--r--src/wrapped/generated/wrappedxslttypes.h2
-rw-r--r--src/wrapped/wrappedxslt.c6
-rw-r--r--src/wrapped/wrappedxslt_private.h6
6 files changed, 33 insertions, 3 deletions
diff --git a/src/include/globalsymbols.h b/src/include/globalsymbols.h
index d0eb3012..6344d5b1 100644
--- a/src/include/globalsymbols.h
+++ b/src/include/globalsymbols.h
@@ -16,4 +16,8 @@ void my_updateGlobalTInfo(void);
 void my_checkGlobalOpt(void);

 void my_updateGlobalOpt(void);

 

+// libxslt

+void my_checkGlobalXslt(void);

+void my_updateGlobalXslt(void);

+

 #endif //_GLOBAL_SYMBOLS_H_
\ No newline at end of file
diff --git a/src/librarian/globalsymbols.c b/src/librarian/globalsymbols.c
index 8da444ad..fb561b6a 100644
--- a/src/librarian/globalsymbols.c
+++ b/src/librarian/globalsymbols.c
@@ -138,4 +138,18 @@ void my_checkGlobalOpt()
     GLOB(optind, "GLIBC_2.2.5");

     GLOB(opterr, "GLIBC_2.2.5");

     GLOB(optopt, "GLIBC_2.2.5");

-}
\ No newline at end of file
+}

+

+// **************** libxslt ****************

+EXPORT int xsltMaxVars;

+void my_updateGlobalXslt()

+{

+    uintptr_t globoffs, globend;

+    TOGLOB(xsltMaxVars, "LIBXML2_1.0.24");

+}

+

+void my_checkGlobalXslt()

+{

+    uintptr_t globoffs, globend;

+    GLOB(xsltMaxVars, "LIBXML2_1.0.24");

+}

diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index f15e37d9..59a8ab8b 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -5714,6 +5714,8 @@ wrappedxml2:
   - xmlCtxtReadIO
 wrappedxshmfence:
 wrappedxslt:
+- vFv:
+  - xsltInit
 - vFp:
   - xsltSetLoaderFunc
 - vFpp:
diff --git a/src/wrapped/generated/wrappedxslttypes.h b/src/wrapped/generated/wrappedxslttypes.h
index 5cd0a077..c96a3646 100644
--- a/src/wrapped/generated/wrappedxslttypes.h
+++ b/src/wrapped/generated/wrappedxslttypes.h
@@ -11,12 +11,14 @@
 #define ADDED_FUNCTIONS() 
 #endif
 
+typedef void (*vFv_t)(void);
 typedef void (*vFp_t)(void*);
 typedef void (*vFpp_t)(void*, void*);
 typedef int32_t (*iFppp_t)(void*, void*, void*);
 typedef int32_t (*iFpppp_t)(void*, void*, void*, void*);
 
 #define SUPER() ADDED_FUNCTIONS() \
+	GO(xsltInit, vFv_t) \
 	GO(xsltSetLoaderFunc, vFp_t) \
 	GO(xsltSetCtxtSortFunc, vFpp_t) \
 	GO(xsltRegisterExtModuleFunction, iFppp_t) \
diff --git a/src/wrapped/wrappedxslt.c b/src/wrapped/wrappedxslt.c
index d07213b7..35bcc751 100644
--- a/src/wrapped/wrappedxslt.c
+++ b/src/wrapped/wrappedxslt.c
@@ -15,6 +15,7 @@
 #include "box64context.h"
 #include "librarian.h"
 #include "callback.h"
+#include "globalsymbols.h"
 
 const char *xsltName =
 #ifdef ANDROID
@@ -153,4 +154,9 @@ EXPORT void my_xsltSetCtxtSortFunc(x64emu_t* emu, void* ctx, void* handler)
     return my->xsltSetCtxtSortFunc(ctx, find_xsltSortFunc_Fct(handler));
 }
 
+EXPORT void my_xsltInit(x64emu_t* emu) {
+    my->xsltInit();
+    my_checkGlobalXslt();
+}
+
 #include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedxslt_private.h b/src/wrapped/wrappedxslt_private.h
index 24c3db72..671fe873 100644
--- a/src/wrapped/wrappedxslt_private.h
+++ b/src/wrapped/wrappedxslt_private.h
@@ -120,7 +120,7 @@ GO(xsltGetSecurityPrefs, pFpi)
 GO(xsltGetUTF8Char, iFpp)
 GO(xsltGetXIncludeDefault, iFv)
 GO(xsltIf, vFpppp)
-GO(xsltInit, vFv)
+GOM(xsltInit, vFEv)
 GO(xsltInitAllDocKeys, iFp)
 GO(xsltInitCtxtExts, iFp)
 //GO(xsltInitCtxtKey, 
@@ -244,4 +244,6 @@ GO(xsltXPathCompile, pFpp)
 GO(xsltXPathCompileFlags, pFppi)
 GO(xsltXPathFunctionLookup, pFppp)
 GO(xsltXPathGetTransformContext, pFp)
-//GO(xsltXPathVariableLookup, 
\ No newline at end of file
+//GO(xsltXPathVariableLookup, 
+
+DATA(xsltMaxVars, 4)
\ No newline at end of file