diff options
Diffstat (limited to 'meta/recipes-devtools/rpm/rpm/rpm-python-restore-origin.patch')
-rw-r--r-- | meta/recipes-devtools/rpm/rpm/rpm-python-restore-origin.patch | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/meta/recipes-devtools/rpm/rpm/rpm-python-restore-origin.patch b/meta/recipes-devtools/rpm/rpm/rpm-python-restore-origin.patch deleted file mode 100644 index 7a473db1ad..0000000000 --- a/meta/recipes-devtools/rpm/rpm/rpm-python-restore-origin.patch +++ /dev/null @@ -1,49 +0,0 @@ -Fix an issue where the PACKAGEORIGIN is not properly stored. - -Restore the rpmtsCallback fdSetOpen call and related code. - -Upstream-Status: Submitted [RPM5 maintainer] - -Signed-off-by: Mark Hatle <mark.hatle@windriver.com> - -Index: rpm/python/rpmts-py.c -=================================================================== ---- rpm.orig/python/rpmts-py.c -+++ rpm/python/rpmts-py.c -@@ -672,6 +672,8 @@ rpmtsCallback(const void * hd, const rpm - Header h = (Header) hd; - struct rpmtsCallbackType_s * cbInfo = data; - PyObject * pkgObj = (PyObject *) pkgKey; -+ PyObject * oh = NULL; -+ const char * origin = NULL; - PyObject * args, * result; - static FD_t fd; - -@@ -693,8 +695,16 @@ rpmtsCallback(const void * hd, const rpm - pkgObj = Py_None; - Py_INCREF(pkgObj); - } -- } else -+ } else { - Py_INCREF(pkgObj); -+ /* XXX yum has (h, rpmloc) tuple as pkgKey. Extract the path. */ -+ if (!(PyTuple_Check(pkgObj) && PyArg_ParseTuple(pkgObj, "|Os", &oh, &origin))) -+ origin = NULL; -+ /* XXX clean up the path, yum paths start "//..." */ -+ if (origin && origin[0] == '/' && origin[1] == '/') -+ origin++; -+ } -+ - - PyEval_RestoreThread(cbInfo->_save); - -@@ -723,6 +733,9 @@ SPEW((stderr, "\t%p = fdDup(%d)\n", fd, - - fcntl(Fileno(fd), F_SETFD, FD_CLOEXEC); - -+ if (origin != NULL) -+ (void) fdSetOpen(fd, origin, 0, 0); -+ - return fd; - } else - if (what == RPMCALLBACK_INST_CLOSE_FILE) { |