r1848577 | cmpilato | 2018-12-10 13:35:07 +0000 (Mon, 10 Dec 2018) swig-py: Followup to r1848425, moving the bulk of the stream conversion logic into libsvn_swig_py (instead of having it duplicated dozens of times in generated code). * subversion/bindings/swig/include/svn_types.swg (%typemap(in) svn_stream_t *WRAPPED_STREAM): Move the logic of handling multiple stream-like input types... * subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c (svn_swig_py_make_stream): ...to here. (parse_fn3_set_fulltext): Raise a callback exception if stream construction fails. * subversion/bindings/swig/python/tests/repository.py (test_parse_fns3_invalid_set_fulltext): New test. Patch by: Yasuhito FUTATSUKI <futatuki at yf.bsdclub.org> Jun Omae <jun66j5 at gmail.com> (Tweaked by me.)
r1848763 | cmpilato | 2018-12-12 13:57:17 +0000 (Wed, 12 Dec 2018) swig-py: Followup to r1848577, simplifying svn_stream_t pointer handling. * subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c (svn_swig_py_make_stream): Use svn_swig_py_convert_ptr() rather than manually checking for an instance of libsvn.core.svn_stream_t using Python APIs. Patch by: Jun Omae <jun66j5 at gmail.com>
r1851888 | futatuki | 2019-01-23 07:43:30 +0000 (Wed, 23 Jan 2019) On branch swig-py3: Fix Python exception handling in callback function * subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c (svn_swig_py_status_func2): Clear python exception if it caused in Python call back function. (To avoid crash in py3) * subversion/bindings/swig/python/tests/wc.py (SubversionWorkingCopyTestCase.test_status_editor): Remove an assertion from call back because it takes no effect, and check result after svn_wc_get_status_editor2() API call instead. (SubversionWorkingCopyTestCase.test_status_editor_callback_exception): New test case for Python exception within svn_wc_status_func2 call back. Patch by: Jun Omae <jun66j5 at gmail.com> (Tweaked by me.)