https://git.reactos.org/?p=reactos.git;a=commitdiff;h=d7c47feb25ce8af855ce0a...
commit d7c47feb25ce8af855ce0ad4202d0499c8a1b1bd Author: Amine Khaldi amine.khaldi@reactos.org AuthorDate: Sat Jan 20 22:30:11 2018 +0100 Commit: Amine Khaldi amine.khaldi@reactos.org CommitDate: Sun Jan 21 13:31:05 2018 +0100
[FREETYPE] Bring back our diffs to reduce the stack usage in cf2_interpT2CharString(). CORE-14227 --- sdk/lib/3rdparty/freetype/src/psaux/psintrp.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-)
diff --git a/sdk/lib/3rdparty/freetype/src/psaux/psintrp.c b/sdk/lib/3rdparty/freetype/src/psaux/psintrp.c index 5c0ee78492..1ac5b9392b 100644 --- a/sdk/lib/3rdparty/freetype/src/psaux/psintrp.c +++ b/sdk/lib/3rdparty/freetype/src/psaux/psintrp.c @@ -525,8 +525,13 @@ CF2_ArrStackRec vStemHintArray;
CF2_HintMaskRec hintMask; +#ifdef __REACTOS__ + CF2_GlyphPathRec *glyphPath = malloc(sizeof(CF2_GlyphPathRec)); +/* Ugly but it allows us to reduce the diff */ +#define glyphPath (*glyphPath) +#else CF2_GlyphPathRec glyphPath; - +#endif
FT_ZERO( &storage ); FT_ZERO( &results ); @@ -2606,7 +2611,13 @@ * discard `counterMask' and `counterHintMap'. * */ +#ifdef __REACTOS__ + CF2_HintMapRec *counterHintMap = malloc(sizeof(CF2_HintMapRec)); +/* Ugly but it allows us to reduce the diff */ +#define counterHintMap (*counterHintMap) +#else CF2_HintMapRec counterHintMap; +#endif CF2_HintMaskRec counterMask;
@@ -2627,6 +2638,9 @@ &counterMask, 0, FALSE ); +#ifdef __REACTOS__ + free(&counterHintMap); +#endif } break;
@@ -3031,6 +3045,12 @@
FT_TRACE4(( "\n" ));
+#ifdef __REACTOS__ + free(&glyphPath); +#undef counterHintMap +#undef glyphPath +#endif + return; }