diff --git a/plinth/middleware.py b/plinth/middleware.py index 692bbb4bd..0e4ce15bb 100644 --- a/plinth/middleware.py +++ b/plinth/middleware.py @@ -20,7 +20,7 @@ Django middleware to show pre-setup message and setup progress. """ from django.contrib import messages -from django.core.urlresolvers import resolve +from django.core import urlresolvers from django.utils.translation import ugettext_lazy as _ import logging @@ -40,7 +40,11 @@ class SetupMiddleware(object): """Handle a request as Django middleware request handler.""" # Perform a URL resolution. This is slightly inefficient as # Django will do this resolution again. - resolver_match = resolve(request.path_info) + try: + resolver_match = urlresolvers.resolve(request.path_info) + except urlresolvers.Resolver404: + return + if not resolver_match.namespaces or not len(resolver_match.namespaces): # Requested URL does not belong to any application return