summaryrefslogtreecommitdiffstats
path: root/gfx/ots/ots-visibility.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gfx/ots/ots-visibility.patch')
-rw-r--r--gfx/ots/ots-visibility.patch58
1 files changed, 58 insertions, 0 deletions
diff --git a/gfx/ots/ots-visibility.patch b/gfx/ots/ots-visibility.patch
new file mode 100644
index 000000000..aeac81c4d
--- /dev/null
+++ b/gfx/ots/ots-visibility.patch
@@ -0,0 +1,58 @@
+diff --git a/gfx/ots/include/opentype-sanitiser.h b/gfx/ots/include/opentype-sanitiser.h
+--- a/gfx/ots/include/opentype-sanitiser.h
++++ b/gfx/ots/include/opentype-sanitiser.h
+@@ -1,15 +1,35 @@
+ // Copyright (c) 2009 The Chromium Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+
+ #ifndef OPENTYPE_SANITISER_H_
+ #define OPENTYPE_SANITISER_H_
+
++#if defined(_WIN32) || defined(__CYGWIN__)
++ #define OTS_DLL_IMPORT __declspec(dllimport)
++ #define OTS_DLL_EXPORT __declspec(dllexport)
++#else
++ #if __GNUC__ >= 4
++ #define OTS_DLL_IMPORT __attribute__((visibility ("default")))
++ #define OTS_DLL_EXPORT __attribute__((visibility ("default")))
++ #endif
++#endif
++
++#ifdef OTS_DLL
++ #ifdef OTS_DLL_EXPORTS
++ #define OTS_API OTS_DLL_EXPORT
++ #else
++ #define OTS_API OTS_DLL_IMPORT
++ #endif
++#else
++ #define OTS_API
++#endif
++
+ #if defined(_WIN32)
+ #include <stdlib.h>
+ typedef signed char int8_t;
+ typedef unsigned char uint8_t;
+ typedef short int16_t;
+ typedef unsigned short uint16_t;
+ typedef int int32_t;
+ typedef unsigned int uint32_t;
+@@ -187,17 +207,17 @@ class OTSStream {
+
+ enum TableAction {
+ TABLE_ACTION_DEFAULT, // Use OTS's default action for that table
+ TABLE_ACTION_SANITIZE, // Sanitize the table, potentially droping it
+ TABLE_ACTION_PASSTHRU, // Serialize the table unchanged
+ TABLE_ACTION_DROP // Drop the table
+ };
+
+-class OTSContext {
++class OTS_API OTSContext {
+ public:
+ OTSContext() {}
+ virtual ~OTSContext() {}
+
+ // Process a given OpenType file and write out a sanitised version
+ // output: a pointer to an object implementing the OTSStream interface. The
+ // sanitisied output will be written to this. In the even of a failure,
+ // partial output may have been written.