summaryrefslogtreecommitdiff
path: root/fxjs/fxjse.h
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2018-07-27 21:17:06 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-07-27 21:17:06 +0000
commit125eb3093a4632ee519041201ca904680f3a2245 (patch)
treee7a238e2d38f4e2d4926a7b38818c1ce896c6e14 /fxjs/fxjse.h
parent6146214d30ab16825908fe6ef96cb6d597cc3ca9 (diff)
downloadpdfium-125eb3093a4632ee519041201ca904680f3a2245.tar.xz
Tag XFA data bound to V8 Objects.
Because we don't want to trust anything V8 gives us back. Use a deep namespace so we can have a short declaration in the structs, but avoid collisions. Change-Id: Ibb832a5dcd34c652159c3343dd70c9e2ee561537 Reviewed-on: https://pdfium-review.googlesource.com/38972 Reviewed-by: Lei Zhang <thestig@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org>
Diffstat (limited to 'fxjs/fxjse.h')
-rw-r--r--fxjs/fxjse.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/fxjs/fxjse.h b/fxjs/fxjse.h
index 3f2eb1d836..c28cc6c919 100644
--- a/fxjs/fxjse.h
+++ b/fxjs/fxjse.h
@@ -11,6 +11,15 @@
#include "core/fxcrt/fx_system.h"
#include "v8/include/v8.h"
+namespace pdfium {
+namespace fxjse {
+
+extern const char kFuncTag[];
+extern const char kClassTag[];
+
+} // namespace fxjse
+} // namespace pdfium
+
class CFXJSE_Arguments;
class CFXJSE_FormCalcContext;
class CFXJSE_Value;
@@ -50,11 +59,13 @@ enum FXJSE_ClassPropTypes {
};
struct FXJSE_FUNCTION_DESCRIPTOR {
+ const char* tag; // pdfium::kFuncTag always.
const char* name;
FXJSE_FuncCallback callbackProc;
};
struct FXJSE_CLASS_DESCRIPTOR {
+ const char* tag; // pdfium::kClassTag always.
const char* name;
const FXJSE_FUNCTION_DESCRIPTOR* methods;
int32_t methNum;