From: SourceForge.net <no...@so...> - 2011-06-27 12:09:45
|
Bugs item #3331170, was opened at 2011-06-25 14:40 Message generated for change (Comment added) made by You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=3331170&group_id=1645 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: python Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: David Froger (dfroger) Assigned to: Nobody/Anonymous (nobody) Summary: side effect between classes Initial Comment: Hi, I observe some side effect when instantiating two C++ class from Python and making them working together is a particular manner. There are files attached to reproduce the problem. However, because it is about memory allocation, I'm not sure the behaviour will be the same as I observe... Compiling and running in pure C++: make cpp make testcpp I get this ouput: _the_set: 1 5 _the_set: 1 5 But using Swig: make py make testpy I get this ouptut, showing that writting into "another_set" also write, by side effect, into "_the_set": _the_set: 1 5 _the_set: 1 222 SWIG Version 1.3.36 Linux ange 2.6.31-22-generic #73-Ubuntu SMP Fri Feb 11 19:18:05 UTC 2011 x86_64 GNU/Linux Best, David ---------------------------------------------------------------------- Comment By: https://www.google.com/accounts () Date: 2011-06-27 12:09 Message: Ok, this was not a bug... The good main.py is : a = ab.A() b = ab.B() b.thisown = 0 a.set_b( b ) a.dosomething() And the documentation explains it very well: http://swig.org/Doc2.0/Python.html#Python_nn30 :-) ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=3331170&group_id=1645 |