diff --git a/lib/galaxy/files/__init__.py b/lib/galaxy/files/__init__.py index 49f1eae337a..d96a7fc0d5c 100644 --- a/lib/galaxy/files/__init__.py +++ b/lib/galaxy/files/__init__.py @@ -1,6 +1,9 @@ import logging import os -from collections import namedtuple +from collections import ( + defaultdict, + namedtuple, +) from galaxy import exceptions from galaxy.util import ( @@ -229,7 +232,7 @@ class ProvidesUserFileSourcesUserContext(object): @property def preferences(self): user = self.trans.user - return user and user.extra_preferences + return user and user.extra_preferences or defaultdict(lambda: None) class DictFileSourcesUserContext(object): diff --git a/lib/galaxy/model/__init__.py b/lib/galaxy/model/__init__.py index e6f51519af1..80efea59704 100644 --- a/lib/galaxy/model/__init__.py +++ b/lib/galaxy/model/__init__.py @@ -15,6 +15,7 @@ import pwd import random import string import time +from collections import defaultdict from datetime import datetime, timedelta from string import Template from uuid import UUID, uuid4 @@ -380,7 +381,7 @@ class User(Dictifiable, RepresentById): @property def extra_preferences(self): - data = {} + data = defaultdict(lambda: None) extra_user_preferences = self.preferences.get('extra_user_preferences') if extra_user_preferences: try: