diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-09-03 15:55:09 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-09-03 15:55:09 -0400 |
| commit | 6e83926657057c97239bef114e640f2b102be02c (patch) | |
| tree | 407eb38f4cc6b94a9c96b4bcff5145538b099449 /lib | |
| parent | 9914074390770e4119e407aa910ac49d716f484c (diff) | |
| download | sqlalchemy-6e83926657057c97239bef114e640f2b102be02c.tar.gz | |
python 2.4
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/sqlalchemy/util.py | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/lib/sqlalchemy/util.py b/lib/sqlalchemy/util.py index ddcab7822..b41aed8bc 100644 --- a/lib/sqlalchemy/util.py +++ b/lib/sqlalchemy/util.py @@ -181,21 +181,23 @@ class frozendict(dict): class _probe(dict): def __missing__(self, key): return 1 + try: - _probe()['missing'] - py25_dict = dict -except KeyError: - class py25_dict(dict): - def __getitem__(self, key): - try: - return dict.__getitem__(self, key) - except KeyError: + try: + _probe()['missing'] + py25_dict = dict + except KeyError: + class py25_dict(dict): + def __getitem__(self, key): try: - missing = self.__missing__ - except AttributeError: - raise KeyError(key) - else: - return missing(key) + return dict.__getitem__(self, key) + except KeyError: + try: + missing = self.__missing__ + except AttributeError: + raise KeyError(key) + else: + return missing(key) finally: del _probe |
