summarylogtreecommitdiffstats
path: root/gfxFont.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gfxFont.patch')
-rw-r--r--gfxFont.patch105
1 files changed, 105 insertions, 0 deletions
diff --git a/gfxFont.patch b/gfxFont.patch
new file mode 100644
index 000000000000..609797cf8006
--- /dev/null
+++ b/gfxFont.patch
@@ -0,0 +1,105 @@
+--- firefox-52.9.0esr.orig/gfx/thebes/gfxFont.cpp 2020-06-03 21:55:12.303261510 +0300
++++ firefox-52.9.0esr/gfx/thebes/gfxFont.cpp 2020-06-03 21:57:35.318890953 +0300
+@@ -3071,6 +3071,28 @@
+
+ return true;
+ }
++// Explicit instantiations of GetShapedWord, to avoid libxul link failure
++template gfxShapedWord*
++gfxFont::GetShapedWord(DrawTarget *aDrawTarget,
++ const uint8_t *aText,
++ uint32_t aLength,
++ uint32_t aHash,
++ Script aRunScript,
++ bool aVertical,
++ int32_t aAppUnitsPerDevUnit,
++ uint32_t aFlags,
++ gfxTextPerfMetrics *aTextPerf);
++
++template gfxShapedWord*
++gfxFont::GetShapedWord(DrawTarget *aDrawTarget,
++ const char16_t *aText,
++ uint32_t aLength,
++ uint32_t aHash,
++ Script aRunScript,
++ bool aVertical,
++ int32_t aAppUnitsPerDevUnit,
++ uint32_t aFlags,
++ gfxTextPerfMetrics *aTextPerf);
+
+ // Explicit instantiations of SplitAndInitTextRun, to avoid libxul link failure
+ template bool
+--- firefox-52.9.0esr.orig/gfx/thebes/gfxFont.h 2020-06-03 21:55:12.299928120 +0300
++++ firefox-52.9.0esr/gfx/thebes/gfxFont.h 2020-06-03 21:58:04.522669252 +0300
+@@ -2171,6 +2171,72 @@
+ static double CalcXScale(DrawTarget* aDrawTarget);
+ };
+
++// Explicit declarations of SplitAndInitTextRun, to avoid libxul link failure
++extern template bool
++gfxFont::SplitAndInitTextRun(DrawTarget *aDrawTarget,
++ gfxTextRun *aTextRun,
++ const uint8_t *aString,
++ uint32_t aRunStart,
++ uint32_t aRunLength,
++ Script aRunScript,
++ bool aVertical);
++
++extern template bool
++gfxFont::SplitAndInitTextRun(DrawTarget *aDrawTarget,
++ gfxTextRun *aTextRun,
++ const char16_t *aString,
++ uint32_t aRunStart,
++ uint32_t aRunLength,
++ Script aRunScript,
++ bool aVertical);
++
++// Explicit declarations of GetShapedWord, to avoid libxul link failure
++extern template gfxShapedWord*
++gfxFont::GetShapedWord(DrawTarget *aDrawTarget,
++ const uint8_t *aText,
++ uint32_t aLength,
++ uint32_t aHash,
++ Script aRunScript,
++ bool aVertical,
++ int32_t aAppUnitsPerDevUnit,
++ uint32_t aFlags,
++ gfxTextPerfMetrics *aTextPerf);
++
++extern template gfxShapedWord*
++gfxFont::GetShapedWord(DrawTarget *aDrawTarget,
++ const char16_t *aText,
++ uint32_t aLength,
++ uint32_t aHash,
++ Script aRunScript,
++ bool aVertical,
++ int32_t aAppUnitsPerDevUnit,
++ uint32_t aFlags,
++ gfxTextPerfMetrics *aTextPerf);
++
++// Explicit declarations of InitFakeSmallCapsRun, to avoid libxul link failure
++template<> bool
++gfxFont::InitFakeSmallCapsRun(DrawTarget *aDrawTarget,
++ gfxTextRun *aTextRun,
++ const uint8_t *aText,
++ uint32_t aOffset,
++ uint32_t aLength,
++ uint8_t aMatchType,
++ uint16_t aOrientation,
++ Script aScript,
++ bool aSyntheticLower,
++ bool aSyntheticUpper);
++template<> bool
++gfxFont::InitFakeSmallCapsRun(DrawTarget *aDrawTarget,
++ gfxTextRun *aTextRun,
++ const char16_t *aText,
++ uint32_t aOffset,
++ uint32_t aLength,
++ uint8_t aMatchType,
++ uint16_t aOrientation,
++ Script aScript,
++ bool aSyntheticLower,
++ bool aSyntheticUpper);
++
+ // proportion of ascent used for x-height, if unable to read value from font
+ #define DEFAULT_XHEIGHT_FACTOR 0.56f \ No newline at end of file