3de07540b7
- attempt to patch around SWIG issues Resolves: rhbz#1207835
48 lines
1.4 KiB
Diff
48 lines
1.4 KiB
Diff
|
|
Fugly hack to fix build with SWIG 3.0.x. The pre-processor seems to
|
|
expand the %define correctly with only the change to %{..%}, but
|
|
%extend still breaks somehow.
|
|
|
|
https://github.com/swig/swig/issues/379
|
|
|
|
--- subversion-1.8.13/subversion/bindings/swig/include/proxy.swg.swigpython
|
|
+++ subversion-1.8.13/subversion/bindings/swig/include/proxy.swg
|
|
@@ -62,7 +62,7 @@
|
|
|
|
/* Default code for all wrapped proxy classes in Python */
|
|
%define %proxy_pythoncode(TYPE)
|
|
-%pythoncode {
|
|
+%pythoncode %{
|
|
def set_parent_pool(self, parent_pool=None):
|
|
"""Create a new proxy object for TYPE"""
|
|
import libsvn.core, weakref
|
|
@@ -83,13 +83,10 @@
|
|
|
|
value = _swig_getattr(self, self.__class__, name)
|
|
|
|
- # If we got back a different object than we have, we need to copy all our
|
|
- # metadata into it, so that it looks identical
|
|
members = self.__dict__.get("_members")
|
|
if members is not None:
|
|
_copy_metadata_deep(value, members.get(name))
|
|
|
|
- # Verify that the new object is good
|
|
_assert_valid_deep(value)
|
|
|
|
return value
|
|
@@ -98,13 +95,10 @@
|
|
"""Set an attribute on this object"""
|
|
self.assert_valid()
|
|
|
|
- # Save a copy of the object, so that the garbage
|
|
- # collector won't kill the object while it's in
|
|
- # SWIG-land
|
|
self.__dict__.setdefault("_members",{})[name] = value
|
|
|
|
return _swig_setattr(self, self.__class__, name, value)
|
|
-}
|
|
+%}
|
|
%enddef
|
|
|
|
/* Define a proxy for wrapping an existing struct */
|