about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2025-10-08 15:59:23 +0200
committerptitSeb <sebastien.chev@gmail.com>2025-10-08 15:59:23 +0200
commit3cfe54f8cf7bb3c66b5b95cd3de4865f307b4b5b (patch)
treee771d0136e2bee0957a65e4cfc635035cee00f00
parent297dc347995525af3f41c7db4ad5ee74475c8001 (diff)
downloadbox64-3cfe54f8cf7bb3c66b5b95cd3de4865f307b4b5b.tar.gz
box64-3cfe54f8cf7bb3c66b5b95cd3de4865f307b4b5b.zip
[BOX32][WRAPPER] Added 2 more 32bits functions to libfontconfig
-rw-r--r--src/wrapped32/generated/functions_list.txt4
-rw-r--r--src/wrapped32/generated/wrappedfontconfigtypes32.h4
-rw-r--r--src/wrapped32/wrappedfontconfig.c14
-rw-r--r--src/wrapped32/wrappedfontconfig_private.h4
4 files changed, 24 insertions, 2 deletions
diff --git a/src/wrapped32/generated/functions_list.txt b/src/wrapped32/generated/functions_list.txt
index bef624bf..cc18d84f 100644
--- a/src/wrapped32/generated/functions_list.txt
+++ b/src/wrapped32/generated/functions_list.txt
@@ -2216,8 +2216,12 @@ wrappedexpat:
 wrappedfontconfig:
 - vFp:
   - FcFontSetDestroy
+- pFv:
+  - FcFontSetCreate
 - pFp:
   - FcCacheCopySet
+- iFpp:
+  - FcFontSetAdd
 - uFpu:
   - FcFreeTypeCharIndex
 - pFpp:
diff --git a/src/wrapped32/generated/wrappedfontconfigtypes32.h b/src/wrapped32/generated/wrappedfontconfigtypes32.h
index aea977d0..a8a32d1d 100644
--- a/src/wrapped32/generated/wrappedfontconfigtypes32.h
+++ b/src/wrapped32/generated/wrappedfontconfigtypes32.h
@@ -12,7 +12,9 @@
 #endif
 
 typedef void (*vFp_t)(void*);
+typedef void* (*pFv_t)(void);
 typedef void* (*pFp_t)(void*);
+typedef int32_t (*iFpp_t)(void*, void*);
 typedef uint32_t (*uFpu_t)(void*, uint32_t);
 typedef void* (*pFpp_t)(void*, void*);
 typedef void* (*pFpV_t)(void*, ...);
@@ -22,7 +24,9 @@ typedef void* (*pFppibp_p_t)(void*, void*, int32_t, struct_p_t*, void*);
 
 #define SUPER() ADDED_FUNCTIONS() \
 	GO(FcFontSetDestroy, vFp_t) \
+	GO(FcFontSetCreate, pFv_t) \
 	GO(FcCacheCopySet, pFp_t) \
+	GO(FcFontSetAdd, iFpp_t) \
 	GO(FcFreeTypeCharIndex, uFpu_t) \
 	GO(FcObjectSetBuild, pFpV_t) \
 	GO(FcPatternBuild, pFpV_t) \
diff --git a/src/wrapped32/wrappedfontconfig.c b/src/wrapped32/wrappedfontconfig.c
index a9c28010..8b8cdd94 100644
--- a/src/wrapped32/wrappedfontconfig.c
+++ b/src/wrapped32/wrappedfontconfig.c
@@ -283,6 +283,20 @@ EXPORT void my32_FcFontSetDestroy(x64emu_t* emu, void* set)
     my->FcFontSetDestroy(inplace_FcFontSet_enlarge(set));
 }
 
+EXPORT void* my32_FcFontSetCreate(x64emu_t* emu)
+{
+    void* ret = my->FcFontSetCreate();
+    return inplace_FcFontSet_shrink(ret);
+}
+
+EXPORT int my32_FcFontSetAdd(x64emu_t* emu, void* set, void* pattern)
+{
+    inplace_FcFontSet_enlarge(set);
+    int ret = my->FcFontSetAdd(set, pattern);
+    inplace_FcFontSet_shrink(set);
+    return ret;
+}
+
 #define NEEDED_LIBS "libexpat.so.1", "libfreetype.so.6"
 
 #include "wrappedlib_init32.h"
diff --git a/src/wrapped32/wrappedfontconfig_private.h b/src/wrapped32/wrappedfontconfig_private.h
index 2a001613..924741a9 100644
--- a/src/wrapped32/wrappedfontconfig_private.h
+++ b/src/wrapped32/wrappedfontconfig_private.h
@@ -82,8 +82,8 @@ GO(FcFini, vFv)
 GOM(FcFontList, pFEppp)
 GO(FcFontMatch, pFppp)
 GO(FcFontRenderPrepare, pFppp)
-//GO(FcFontSetAdd, iFbiibp__p)
-//GO(FcFontSetCreate, biibp__Fv)
+GOM(FcFontSetAdd, iFEpp)
+GOM(FcFontSetCreate, pFEv)
 GOM(FcFontSetDestroy, vFEp)
 //GO(FcFontSetList, biibp__Fpbbiibp___ipbiibp__)
 //GO(FcFontSetMatch, pFpbbiibp___ipp)