Encode session in base64 to workaround a Qt bug
Recent updates of Qt can no longer store python's binary strings as settings, so I encode it as an easy to handle base64 string to make the session storing work again.
This commit is contained in:
parent
c4e258bbf9
commit
d1d781f3a3
@ -22,6 +22,7 @@ import http.client
|
||||
import urllib.parse
|
||||
import os.path
|
||||
import pickle
|
||||
import base64
|
||||
|
||||
from relational.relation import relation
|
||||
from relational import parser
|
||||
@ -103,7 +104,7 @@ class UserInterface (object):
|
||||
with open(filename, 'w') as f:
|
||||
pickle.dump(self.relations, f)
|
||||
return None
|
||||
return pickle.dumps(self.relations)
|
||||
return base64.b64encode(pickle.dumps(self.relations)).decode()
|
||||
|
||||
def session_restore(self, session=None, filename=None):
|
||||
'''
|
||||
@ -113,7 +114,7 @@ class UserInterface (object):
|
||||
'''
|
||||
if session:
|
||||
try:
|
||||
self.relations = pickle.loads(session)
|
||||
self.relations = pickle.loads(base64.b64decode(session))
|
||||
except:
|
||||
pass
|
||||
elif filename:
|
||||
|
Loading…
x
Reference in New Issue
Block a user