From a882fff8d3d8ff37d5a8c6a77bd6b01b39c97c75 Mon Sep 17 00:00:00 2001 From: Dimitar Tasev <dimtasev@gmail.com> Date: Mon, 7 Jan 2019 11:31:21 +0000 Subject: [PATCH] Change FromString function depending on PyVersion, re #24007 --- .../mantid/api/src/Exports/ITableWorkspace.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Framework/PythonInterface/mantid/api/src/Exports/ITableWorkspace.cpp b/Framework/PythonInterface/mantid/api/src/Exports/ITableWorkspace.cpp index 46aee37525a..06450004f7f 100644 --- a/Framework/PythonInterface/mantid/api/src/Exports/ITableWorkspace.cpp +++ b/Framework/PythonInterface/mantid/api/src/Exports/ITableWorkspace.cpp @@ -26,9 +26,16 @@ #include <boost/python/dict.hpp> #include <boost/python/list.hpp> #include <boost/python/make_constructor.hpp> + #include <cstring> #include <vector> +#if PY_MAJOR_VERSION >= 3 +#define FROM_CSTRING PyUnicode_FromString +#else +#define FROM_CSTRING PyString_FromString +#endif + // See // http://docs.scipy.org/doc/numpy/reference/c-api.array.html#PY_ARRAY_UNIQUE_SYMBOL #define PY_ARRAY_UNIQUE_SYMBOL API_ARRAY_API @@ -309,7 +316,7 @@ PyObject *columnTypes(ITableWorkspace &self) { for (int col = 0; col < numCols; col++) { Mantid::API::Column_const_sptr column = self.getColumn(col); const std::type_info &typeID = column->get_type_info(); - if (PyList_SetItem(list, col, PyString_FromString(typeID.name()))) { + if (PyList_SetItem(list, col, FROM_CSTRING(typeID.name()))) { throw std::runtime_error("Error while building list"); } } -- GitLab