From 6f09a10380ec13c83514200bd069271490478746 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 19 Jun 2015 08:57:51 +0530 Subject: [PATCH] Fix compilation of dukpy on OS X and windows --- src/duktape/conversions.c | 2 +- src/duktape/dukpy.h | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/duktape/conversions.c b/src/duktape/conversions.c index e273bebefe..c58bf0df5e 100644 --- a/src/duktape/conversions.c +++ b/src/duktape/conversions.c @@ -20,6 +20,7 @@ static int get_repr(PyObject *value, char *buf, int bufsz) { static duk_ret_t python_function_caller(duk_context *ctx) { PyObject *func, *args, *result; + PyObject *ptype = NULL, *pval = NULL, *tb = NULL; DukContext *dctx; duk_idx_t nargs, i; static char buf1[200], buf2[1024]; @@ -67,7 +68,6 @@ static duk_ret_t python_function_caller(duk_context *ctx) } duk_error(ctx, DUK_ERR_ERROR, "Python function (%s) failed", buf1); } - PyObject *ptype = NULL, *pval = NULL, *tb = NULL; PyErr_Fetch(&ptype, &pval, &tb); if (!get_repr(pval, buf2, 1024)) get_repr(ptype, buf2, 1024); Py_XDECREF(ptype); Py_XDECREF(pval); Py_XDECREF(tb); diff --git a/src/duktape/dukpy.h b/src/duktape/dukpy.h index 6ec98a340d..2b19cd151f 100644 --- a/src/duktape/dukpy.h +++ b/src/duktape/dukpy.h @@ -11,7 +11,7 @@ typedef struct DukEnum_ DukEnum; /* module.c */ -PyObject DukUndefined; +extern PyObject DukUndefined; #define Duk_undefined (&DukUndefined) extern PyObject *JSError; @@ -25,7 +25,7 @@ struct DukContext_ { PyThreadState *py_thread_state; }; -PyTypeObject DukContext_Type; +extern PyTypeObject DukContext_Type; DukContext *DukContext_get(duk_context *ctx); @@ -38,10 +38,10 @@ struct DukObject_ { DukObject *parent; }; -PyTypeObject DukObject_Type; -PyTypeObject DukArray_Type; -PyTypeObject DukFunction_Type; -PyTypeObject DukEnum_Type; +extern PyTypeObject DukObject_Type; +extern PyTypeObject DukArray_Type; +extern PyTypeObject DukFunction_Type; +extern PyTypeObject DukEnum_Type; DukObject *DukObject_from_DukContext(DukContext *context, duk_idx_t index); DukObject *DukObject_from_ctx(duk_context *ctx, duk_idx_t index);