summaryrefslogtreecommitdiffstats
path: root/rpmmodule/rpmmodule.c
diff options
context:
space:
mode:
authorErik Troan <ewt@redhat.com>1999-08-04 18:14:07 +0000
committerErik Troan <ewt@redhat.com>1999-08-04 18:14:07 +0000
commitcfd1a388adce1f80aa12d56c56fd58ece0abc779 (patch)
tree7b3897e63a0afc190e83ef193a01327956b414ff /rpmmodule/rpmmodule.c
parent1b59ce1f5f938ddf22256851808235cff7d87d46 (diff)
downloadanaconda-cfd1a388adce1f80aa12d56c56fd58ece0abc779.tar.gz
anaconda-cfd1a388adce1f80aa12d56c56fd58ece0abc779.tar.xz
anaconda-cfd1a388adce1f80aa12d56c56fd58ece0abc779.zip
fixes for package upgrading
Diffstat (limited to 'rpmmodule/rpmmodule.c')
-rw-r--r--rpmmodule/rpmmodule.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/rpmmodule/rpmmodule.c b/rpmmodule/rpmmodule.c
index 790e7ec8e..b646013d2 100644
--- a/rpmmodule/rpmmodule.c
+++ b/rpmmodule/rpmmodule.c
@@ -830,8 +830,9 @@ static PyObject * rpmtransAdd(rpmtransObject * s, PyObject * args) {
hdrObject * h;
PyObject * key;
char * how = NULL;
+ int isUpgrade = 0;
- if (!PyArg_ParseTuple(args, "OO|s", &h, &key, &s)) return NULL;
+ if (!PyArg_ParseTuple(args, "OO|s", &h, &key, &how)) return NULL;
if (h->ob_type != &hdrType) {
PyErr_SetString(PyExc_TypeError, "bad type for header argument");
return NULL;
@@ -840,12 +841,13 @@ static PyObject * rpmtransAdd(rpmtransObject * s, PyObject * args) {
if (how && strcmp(how, "a") && strcmp(how, "u")) {
PyErr_SetString(PyExc_TypeError, "how argument must be \"u\" or \"a\"");
return NULL;
- }
+ } else if (how && !strcmp(how, "u"))
+ isUpgrade = 1;
if (how && strcmp(how, "a"))
- rpmtransAvailablePackage(s->ts, h->h, key);
+ rpmtransAvailablePackage(s->ts, h, key);
else
- rpmtransAddPackage(s->ts, h->h, NULL, key, how ? 1 : 0, NULL);
+ rpmtransAddPackage(s->ts, h->h, NULL, key, isUpgrade, NULL);
if (key) PyList_Append(s->keyList, key);