diff options
author | Aaron Williamson <aaron@copiesofcopies.org> | 2012-01-17 00:59:21 -0500 |
---|---|---|
committer | Aaron Williamson <aaron@copiesofcopies.org> | 2012-01-17 00:59:21 -0500 |
commit | 99a270e95298b248a77b07203ab3921078bd7906 (patch) | |
tree | 34711abf27ab7a614c92842b456bf74ec3d5d5fb /mediagoblin/tools/request.py | |
parent | 25b48323a86a1036112f2f33c889d5d12d5dee9c (diff) | |
parent | 8c7701f9f1653cf4038143cfb7a497ae21edf108 (diff) | |
download | mediagoblin-99a270e95298b248a77b07203ab3921078bd7906.tar.lz mediagoblin-99a270e95298b248a77b07203ab3921078bd7906.tar.xz mediagoblin-99a270e95298b248a77b07203ab3921078bd7906.zip |
Merged changes with upstream
Diffstat (limited to 'mediagoblin/tools/request.py')
-rw-r--r-- | mediagoblin/tools/request.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/mediagoblin/tools/request.py b/mediagoblin/tools/request.py index b1cbe119..7e193125 100644 --- a/mediagoblin/tools/request.py +++ b/mediagoblin/tools/request.py @@ -14,7 +14,7 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -from mediagoblin.db.util import ObjectId +from mediagoblin.db.util import ObjectId, InvalidId def setup_user_in_request(request): """ @@ -25,13 +25,17 @@ def setup_user_in_request(request): request.user = None return - user = None - user = request.app.db.User.one( - {'_id': ObjectId(request.session['user_id'])}) + try: + oid = ObjectId(request.session['user_id']) + except InvalidId: + user = None + else: + user = request.db.User.one({'_id': oid}) if not user: # Something's wrong... this user doesn't exist? Invalidate # this session. + print "Killing session for %r" % request.session['user_id'] request.session.invalidate() request.user = user |