From 5f89dcf6e451b40b8483c8deb31756a7bf695213 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 18 Nov 2015 09:02:53 +0530 Subject: [PATCH] Fix session data for anonymous users not being restored on startup --- src/pyj/session.pyj | 5 +++-- src/pyj/srv.pyj | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/pyj/session.pyj b/src/pyj/session.pyj index 0e6e61d998..a1926af0d6 100644 --- a/src/pyj/session.pyj +++ b/src/pyj/session.pyj @@ -106,8 +106,9 @@ class UserSessionData(SessionData): self.changes = {} self.has_changes = False self.push_timer_id = None - for key in saved_data: - self.set(key, saved_data[key]) + if saved_data: + for key in saved_data: + self.set(key, saved_data[key]) self.echo_changes = True def get(self, key, defval): diff --git a/src/pyj/srv.pyj b/src/pyj/srv.pyj index b2d7e69086..d7031c60c9 100644 --- a/src/pyj/srv.pyj +++ b/src/pyj/srv.pyj @@ -3,7 +3,7 @@ from ajax import ajax from elementmaker import E -from session import UserSessionData, SessionData +from session import UserSessionData from book_list.boss import Boss from book_list.globals import set_boss, set_session_data from gettext import gettext as _ @@ -31,7 +31,7 @@ def on_library_load_progress(loaded, total): p.value = loaded def load_book_list(): - temp = SessionData() # So that settings for anonymous users are preserved + temp = UserSessionData(None, {}) # So that settings for anonymous users are preserved query = {'library_id':temp.get('library_id'), 'sort':temp.get('sort')} ajax('interface-data/init', on_library_loaded, on_library_load_progress, query=query).send()