git: fdad3e1b5329 - main - devel/py-subversion{,-lts}: swig-py: Fix `none_dealloc` error (one-off patch)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 28 Sep 2024 08:43:54 UTC
The branch main has been updated by michaelo: URL: https://cgit.FreeBSD.org/ports/commit/?id=fdad3e1b5329ce582c89c6bb71d0d83272622bc1 commit fdad3e1b5329ce582c89c6bb71d0d83272622bc1 Author: Michael Osipov <michaelo@FreeBSD.org> AuthorDate: 2024-09-27 08:17:33 +0000 Commit: Michael Osipov <michaelo@FreeBSD.org> CommitDate: 2024-09-28 08:43:28 +0000 devel/py-subversion{,-lts}: swig-py: Fix `none_dealloc` error (one-off patch) PR: 281709 Approved by: jrm (mentor), otis (mentor) Differential Revision: https://reviews.freebsd.org/D46807 --- devel/py-subversion/Makefile | 4 +- .../patch-eae531008b3454d2709b8aaf766b08e37160668a | 44 ++++++++++++++++++++++ 2 files changed, 46 insertions(+), 2 deletions(-) diff --git a/devel/py-subversion/Makefile b/devel/py-subversion/Makefile index 40fabe32d855..85b5d681eb35 100644 --- a/devel/py-subversion/Makefile +++ b/devel/py-subversion/Makefile @@ -12,8 +12,8 @@ USE_PYTHON= flavors py3kplist # There is bug in python bindings Makefile MAKE_JOBS_UNSAFE=yes -PORTREVISION_LATEST= 4 -PORTREVISION_LTS= 2 +PORTREVISION_LATEST= 5 +PORTREVISION_LTS= 3 SVN_BUILD_BINDINGS= yes diff --git a/devel/py-subversion/files/patch-eae531008b3454d2709b8aaf766b08e37160668a b/devel/py-subversion/files/patch-eae531008b3454d2709b8aaf766b08e37160668a new file mode 100644 index 000000000000..e14e6545cb3b --- /dev/null +++ b/devel/py-subversion/files/patch-eae531008b3454d2709b8aaf766b08e37160668a @@ -0,0 +1,44 @@ +--- subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c.orig 2023-10-20 04:00:04 UTC ++++ subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c +@@ -2321,8 +2321,6 @@ static svn_error_t *apply_textdelta(void *file_baton, + in Python. */ + if (result == Py_None) + { +- Py_DECREF(result); +- + *handler = svn_delta_noop_window_handler; + *h_baton = NULL; + } +@@ -2839,8 +2837,7 @@ parse_fn3_apply_textdelta(svn_txdelta_window_handler_t + { + PyObject *editor = NULL, *baton_item = NULL, *py_pool = NULL; + PyObject *ib = node_baton; +- apr_pool_t *pool; +- PyObject *result; ++ PyObject *result = NULL; + svn_error_t *err; + + svn_swig_py_acquire_py_lock(); +@@ -2863,13 +2860,12 @@ parse_fn3_apply_textdelta(svn_txdelta_window_handler_t + in Python. */ + if (result == Py_None) + { +- Py_DECREF(result); +- + *handler = svn_delta_noop_window_handler; + *handler_baton = NULL; + } + else + { ++ apr_pool_t *pool; + /* return the thunk for invoking the handler. the baton creates + new reference of our 'result' reference, which is the handler, + so we release it even if no error. */ +@@ -2890,6 +2886,7 @@ parse_fn3_apply_textdelta(svn_txdelta_window_handler_t + err = SVN_NO_ERROR; + + finished: ++ Py_XDECREF(result); + svn_swig_py_release_py_lock(); + return err; + }