diff options
Diffstat (limited to 'lib/sqlalchemy/util.py')
-rw-r--r-- | lib/sqlalchemy/util.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/sqlalchemy/util.py b/lib/sqlalchemy/util.py index dea320724..c9982a9fa 100644 --- a/lib/sqlalchemy/util.py +++ b/lib/sqlalchemy/util.py @@ -759,9 +759,11 @@ class OrderedDict(dict): dict.__delitem__(self, key) self._list.remove(key) - def pop(self, key): - value = dict.pop(self, key) - self._list.remove(key) + def pop(self, key, *default): + present = key in self + value = dict.pop(self, key, *default) + if present: + self._list.remove(key) return value def popitem(self): |