diff --git a/src/fuzzysearch/_substitutions_only.c b/src/fuzzysearch/_substitutions_only.c index 226d511..10ec17d 100644 --- a/src/fuzzysearch/_substitutions_only.c +++ b/src/fuzzysearch/_substitutions_only.c @@ -5,6 +5,7 @@ #endif +#define DECLARE_VARS #define PREPARE #define OUTPUT_VALUE(x) DO_FREES; Py_RETURN_TRUE #define RETURN_AT_END Py_RETURN_FALSE @@ -17,14 +18,16 @@ #undef RETURN_AT_END #undef OUTPUT_VALUE #undef PREPARE +#undef DECLARE_VARS #ifdef IS_PY3K #define PyInt_FromLong(x) PyLong_FromLong(x) #endif +#define DECLARE_VARS \ + PyObject *results; \ + PyObject *next_result #define PREPARE \ - PyObject *results; \ - PyObject *next_result; \ results = PyList_New(0); \ if (unlikely(!results)) \ return NULL; @@ -51,6 +54,7 @@ #undef RETURN_AT_END #undef OUTPUT_VALUE #undef PREPARE +#undef DECLARE_VARS static PyMethodDef substitutions_only_methods[] = { diff --git a/src/fuzzysearch/_substitutions_only_lp_template.h b/src/fuzzysearch/_substitutions_only_lp_template.h index 2d40117..832515c 100644 --- a/src/fuzzysearch/_substitutions_only_lp_template.h +++ b/src/fuzzysearch/_substitutions_only_lp_template.h @@ -11,6 +11,8 @@ FUNCTION_NAME(PyObject *self, PyObject *args) unsigned int *sub_counts; unsigned int seq_idx, subseq_idx, count_idx; + DECLARE_VARS; + if (!PyArg_ParseTuple( args, #ifdef IS_PY3K diff --git a/src/fuzzysearch/_substitutions_only_ngrams_template.h b/src/fuzzysearch/_substitutions_only_ngrams_template.h index 7be6680..82270e5 100644 --- a/src/fuzzysearch/_substitutions_only_ngrams_template.h +++ b/src/fuzzysearch/_substitutions_only_ngrams_template.h @@ -34,6 +34,8 @@ FUNCTION_NAME(PyObject *self, PyObject *args) int subseq_sum; int n_differences; + DECLARE_VARS; + if (!PyArg_ParseTuple( args, #ifdef IS_PY3K