summaryrefslogtreecommitdiff
path: root/javascript
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@digital-scurf.org>2015-08-12 10:43:34 +0200
committerDaniel Silverstone <dsilvers@digital-scurf.org>2015-08-12 10:43:34 +0200
commitc47db23f8fe7d7247b6db54c58b06c1920a087dc (patch)
tree624a0d46274de0dc258cf30baa323be3b6220c82 /javascript
parentb4d26fd1606ad50aa136ba27efe87bbcdf396c81 (diff)
downloadnetsurf-c47db23f8fe7d7247b6db54c58b06c1920a087dc.tar.gz
netsurf-c47db23f8fe7d7247b6db54c58b06c1920a087dc.tar.bz2
Attempt to prevent use of STRPTIME or GETDATE on platforms where we know it is broken
Diffstat (limited to 'javascript')
-rw-r--r--javascript/Makefile1
-rw-r--r--javascript/duktape/duk_config.h24
-rw-r--r--javascript/duktape/duk_custom.h29
3 files changed, 42 insertions, 12 deletions
diff --git a/javascript/Makefile b/javascript/Makefile
index 7fe44fa19..ee9c3dec6 100644
--- a/javascript/Makefile
+++ b/javascript/Makefile
@@ -84,6 +84,7 @@ $(S_JSAPI_BINDING): $(BINDINGS)
S_JAVASCRIPT += dukky.c content.c fetcher.c duktape/duktape.c
+CFLAGS += -DDUK_OPT_HAVE_CUSTOM_H
else
S_JAVASCRIPT += none.c fetcher.c
endif
diff --git a/javascript/duktape/duk_config.h b/javascript/duktape/duk_config.h
index e21bc9292..2cdb49fd7 100644
--- a/javascript/duktape/duk_config.h
+++ b/javascript/duktape/duk_config.h
@@ -2988,6 +2988,18 @@ typedef FILE duk_file;
#endif
/*
+ * Alternative customization header
+ *
+ * If you want to modify the final DUK_USE_xxx flags directly (without
+ * using the available DUK_OPT_xxx flags), define DUK_OPT_HAVE_CUSTOM_H
+ * and tweak the final flags there.
+ */
+
+#if defined(DUK_OPT_HAVE_CUSTOM_H)
+#include "duk_custom.h"
+#endif
+
+/*
* Date provider selection
*
* User may define DUK_USE_DATE_GET_NOW() etc directly, in which case we'll
@@ -3071,18 +3083,6 @@ DUK_INTERNAL_DECL duk_bool_t duk_bi_date_format_parts_strftime(duk_context *ctx,
#undef DUK_USE_JSON_STRINGIFY_FASTPATH
/*
- * Alternative customization header
- *
- * If you want to modify the final DUK_USE_xxx flags directly (without
- * using the available DUK_OPT_xxx flags), define DUK_OPT_HAVE_CUSTOM_H
- * and tweak the final flags there.
- */
-
-#if defined(DUK_OPT_HAVE_CUSTOM_H)
-#include "duk_custom.h"
-#endif
-
-/*
* You may add overriding #define/#undef directives below for
* customization. You of course cannot un-#include or un-typedef
* anything; these require direct changes above.
diff --git a/javascript/duktape/duk_custom.h b/javascript/duktape/duk_custom.h
new file mode 100644
index 000000000..da9407f27
--- /dev/null
+++ b/javascript/duktape/duk_custom.h
@@ -0,0 +1,29 @@
+/*
+ * Copyright 2015 Daniel Silverstone <dsilvers@netsurf-browser.org>
+ *
+ * This file is part of NetSurf, http://www.netsurf-browser.org/
+ *
+ * NetSurf is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * NetSurf is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+/** \file
+ * Custom configuration for duktape
+ */
+
+#include "utils/config.h"
+
+#ifndef HAVE_STRPTIME
+#undef DUK_USE_DATE_PRS_STRPTIME
+#undef DUK_USE_DATE_PRS_GETDATE
+#undef DUK_USE_DATE_PARSE_STRING
+#endif