diff options
author | Vikraman Choudhury <vikraman.choudhury@gmail.com> | 2011-05-12 04:11:43 +0530 |
---|---|---|
committer | Vikraman Choudhury <vikraman.choudhury@gmail.com> | 2011-05-12 04:11:43 +0530 |
commit | 7366313b044fddd519a845f555fc8b2d5bd780f5 (patch) | |
tree | b71d26bb3cf2cdd25adb4516c1e3d960ed7b3f45 | |
parent | server working, can POST data successfully :) (diff) | |
download | gentoostats-7366313b044fddd519a845f555fc8b2d5bd780f5.tar.gz gentoostats-7366313b044fddd519a845f555fc8b2d5bd780f5.tar.bz2 gentoostats-7366313b044fddd519a845f555fc8b2d5bd780f5.zip |
fix duplicate tuples in packages
-rw-r--r-- | server/post.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/server/post.py b/server/post.py index 4cd0712..b9eb46c 100644 --- a/server/post.py +++ b/server/post.py @@ -48,9 +48,12 @@ def handler(uuid, data, db): pkg = data['PACKAGES'] for cpv in pkg.keys(): t = pkgsplit(cpv) - db.insert('packages', cat=t['cat'], pkg=t['pn'], ver=t['ver']) - pkey = db.select('packages', vars={'cat':t['cat'], 'pkg':t['pn'], 'ver':t['ver']}, - where='cat=$cat and pkg=$pkg and ver=$ver', what='pkey')[0].pkey + s = db.select('packages', vars={'cat':t['cat'], 'pkg':t['pn'], 'ver':t['ver']}, + where='cat=$cat and pkg=$pkg and ver=$ver') + if len(s) == 0: + pkey = db.insert('packages', cat=t['cat'], pkg=t['pn'], ver=t['ver']) + else: + pkey = s[0].pkey for use in pkg[cpv]: db.insert('useflags', uuid=uuid, useflag=use, pkey=str(pkey)) |