-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathswig.patch
46 lines (40 loc) · 1.42 KB
/
swig.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# hunk 1: multi-inheritance is broken https://sourceforge.net/p/swig/bugs/1379/
# hunk 2: compilation issue on GCC 4.6 http://sourceforge.net/p/swig/patches/296/
# hunk 3: thread bug on iterators https://sourceforge.net/p/swig/bugs/1370/
--- eossdk_wrap.cpp-t
+++ eossdk_wrap.cpp-t
@@ -1599,6 +1599,10 @@
PyErr_SetString(PyExc_TypeError, "Attempt to append a non SwigPyObject");
return NULL;
}
+ while (sobj->next && SwigPyObject_Check(sobj->next)) {
+ sobj = (SwigPyObject *)sobj->next;
+ }
+ ((SwigPyObject *)next)->next = sobj->next;
sobj->next = next;
Py_INCREF(next);
return SWIG_Py_Void();
@@ -3403,6 +3407,7 @@
#include <stdexcept>
+#include <cstddef>
namespace swig {
@@ -3518,7 +3523,11 @@
}
public:
- virtual ~SwigPyIterator() {}
+ virtual ~SwigPyIterator() {
+ SWIG_PYTHON_THREAD_BEGIN_BLOCK;
+ _seq = 0;
+ SWIG_PYTHON_THREAD_END_BLOCK;
+ }
// Access iterator method, required by Python
virtual PyObject *value() const = 0;
@@ -11477,7 +11477,7 @@ SWIGINTERN PyObject *_wrap__BitSet4096__
try {
{
SWIG_PYTHON_THREAD_BEGIN_ALLOW;
- result = (bool)((std::bitset< 4096 > const *)arg1)->operator !=((std::bitset< 4096 > const &)*arg2);
+ result = !(bool)((std::bitset< 4096 > const *)arg1)->operator ==((std::bitset< 4096 > const &)*arg2);
SWIG_PYTHON_THREAD_END_ALLOW;
}
} catch (error const & e) {