From 31261f3aa25e090b7a6d3ff231eb46e342203181 Mon Sep 17 00:00:00 2001 From: Emilio Pozuelo Monfort Date: Thu, 16 Jul 2020 14:14:11 +0200 Subject: security_db: use pickle's dumps and loads Rather than using StringIO in py2 and BytesIO in py3 and porting away from buffer which is also gone in py3, let's just use dumps and loads and let the pickle library handle the memory representation for us. --- lib/python/security_db.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'lib') diff --git a/lib/python/security_db.py b/lib/python/security_db.py index 9313cb4949..a3d3052cb2 100644 --- a/lib/python/security_db.py +++ b/lib/python/security_db.py @@ -33,7 +33,6 @@ import base64 import bugs from collections import namedtuple import pickle -import cStringIO import glob import itertools import os @@ -696,15 +695,14 @@ class DB: return data def toString(data): - result = cStringIO.StringIO() - pickle.dump(data, result) - return buffer(result.getvalue()) + return pickle.dumps(data) for (old_print, contents) in cursor.execute( "SELECT inodeprint, parsed FROM inodeprints WHERE file = ?", (filename,)): if old_print == current_print: - return (True, pickle.load(cStringIO.StringIO(contents))) + print(pickle.loads(contents)) + return (True, pickle.loads(contents)) result = do_parse(debian_support.PackageFile(filename)) cursor.execute("""UPDATE inodeprints SET inodeprint = ?, parsed = ? WHERE file = ?""", (current_print, toString(result), filename)) -- cgit v1.2.3