about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-09-27 11:11:58 +0200
committerptitSeb <sebastien.chev@gmail.com>2024-09-27 11:11:58 +0200
commit34d4cde7c431c020248ba275fa3921775463780b (patch)
tree9113da77bd484ee29f7a8a780742747bd44512f8 /src
parent66788af44d7a77adb68749660711a79e9043af5d (diff)
downloadbox64-34d4cde7c431c020248ba275fa3921775463780b.tar.gz
box64-34d4cde7c431c020248ba275fa3921775463780b.zip
[BOX32][WRAPPER] Added 2 more 32bits wrapped function to freetype
Diffstat (limited to 'src')
-rw-r--r--src/wrapped32/generated/functions_list.txt2
-rw-r--r--src/wrapped32/generated/wrappedfreetypetypes32.h2
-rw-r--r--src/wrapped32/wrappedfreetype.c8
-rw-r--r--src/wrapped32/wrappedfreetype_private.h4
4 files changed, 14 insertions, 2 deletions
diff --git a/src/wrapped32/generated/functions_list.txt b/src/wrapped32/generated/functions_list.txt
index 7a57cee3..d67b10b9 100644
--- a/src/wrapped32/generated/functions_list.txt
+++ b/src/wrapped32/generated/functions_list.txt
@@ -1051,6 +1051,8 @@ wrappedfreetype:
   - FT_Load_Glyph
 - iFpuu:
   - FT_Set_Pixel_Sizes
+- iFpLi:
+  - FT_Load_Char
 - iFpplp:
   - FT_New_Face
 - iFplluu:
diff --git a/src/wrapped32/generated/wrappedfreetypetypes32.h b/src/wrapped32/generated/wrappedfreetypetypes32.h
index 432b6343..868f7d07 100644
--- a/src/wrapped32/generated/wrappedfreetypetypes32.h
+++ b/src/wrapped32/generated/wrappedfreetypetypes32.h
@@ -17,6 +17,7 @@ typedef int32_t (*iFpu_t)(void*, uint32_t);
 typedef uint32_t (*uFpL_t)(void*, uintptr_t);
 typedef int32_t (*iFpui_t)(void*, uint32_t, int32_t);
 typedef int32_t (*iFpuu_t)(void*, uint32_t, uint32_t);
+typedef int32_t (*iFpLi_t)(void*, uintptr_t, int32_t);
 typedef int32_t (*iFpplp_t)(void*, void*, intptr_t, void*);
 typedef int32_t (*iFplluu_t)(void*, intptr_t, intptr_t, uint32_t, uint32_t);
 typedef int32_t (*iFppllp_t)(void*, void*, intptr_t, intptr_t, void*);
@@ -28,6 +29,7 @@ typedef int32_t (*iFppllp_t)(void*, void*, intptr_t, intptr_t, void*);
 	GO(FT_Get_Char_Index, uFpL_t) \
 	GO(FT_Load_Glyph, iFpui_t) \
 	GO(FT_Set_Pixel_Sizes, iFpuu_t) \
+	GO(FT_Load_Char, iFpLi_t) \
 	GO(FT_New_Face, iFpplp_t) \
 	GO(FT_Set_Char_Size, iFplluu_t) \
 	GO(FT_New_Memory_Face, iFppllp_t)
diff --git a/src/wrapped32/wrappedfreetype.c b/src/wrapped32/wrappedfreetype.c
index 20e1cae1..1b06fe13 100644
--- a/src/wrapped32/wrappedfreetype.c
+++ b/src/wrapped32/wrappedfreetype.c
@@ -984,6 +984,14 @@ EXPORT uint32_t my32_FT_Get_Char_Index(x64emu_t* emu, void* face, unsigned long
     return ret;
 }
 
+EXPORT int my32_FT_Load_Char(x64emu_t* emu, void* face, unsigned long code, int flags)
+{
+    inplace_FT_FaceRec_enlarge(face);
+    int ret = my->FT_Load_Char(face, code, flags);
+    inplace_FT_FaceRec_shrink(face);
+    return ret;
+}
+
 EXPORT int my32_FT_Load_Glyph(x64emu_t* emu, void* face, uint32_t index, int flags)
 {
     inplace_FT_FaceRec_enlarge(face);
diff --git a/src/wrapped32/wrappedfreetype_private.h b/src/wrapped32/wrappedfreetype_private.h
index ee86daa8..e5e7904f 100644
--- a/src/wrapped32/wrappedfreetype_private.h
+++ b/src/wrapped32/wrappedfreetype_private.h
@@ -21,7 +21,7 @@
 GO(FT_Cos, lFl)
 GO(FT_DivFix, lFll)
 GOM(FT_Done_Face, iFEp)
-//GO(FT_Done_FreeType, iFp)
+GO(FT_Done_FreeType, iFp)
 //GO(FT_Done_Glyph, vFp)
 //GO(FT_Done_Library, iFp)
 //GO(FT_Done_MM_Var, iFpp)
@@ -107,7 +107,7 @@ GO(FT_Init_FreeType, iFBp_)
 //GO(FT_List_Iterate, 
 //GO(FT_List_Remove, 
 //GO(FT_List_Up, vFpp)
-//GO(FT_Load_Char, iFpLi)
+GOM(FT_Load_Char, iFEpLi)
 GOM(FT_Load_Glyph, iFEpui)
 //GO(FT_Load_Sfnt_Table, iFpLlpp)
 //GO(FT_Matrix_Invert, iFp)