X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;ds=sidebyside;f=apps%2Fpatchwork%2Ffilters.py;fp=apps%2Fpatchwork%2Ffilters.py;h=002a0a855b491c93240eb23e77d404116e37406e;hb=a45a3fdfdb9706791ff36128399b302c4fa37c52;hp=52fc03fe19d655f78324cea43ef3533a7d232b6e;hpb=fa999187bfc23bc0d674875c554c360601f8f6b4;p=patchwork diff --git a/apps/patchwork/filters.py b/apps/patchwork/filters.py index 52fc03f..002a0a8 100644 --- a/apps/patchwork/filters.py +++ b/apps/patchwork/filters.py @@ -445,8 +445,14 @@ class Filters: if remove.param in params.keys(): del params[remove.param] - return '?' + '&'.join(['%s=%s' % (quote(k), quote(v)) - for (k,v) in params.iteritems()]) + pairs = params.iteritems() + + def sanitise(s): + if not isinstance(s, basestring): + s = unicode(s) + return quote(s.encode('utf-8')) + + return '?' + '&'.join(['%s=%s' % map(sanitise, p) for p in pairs]) def querystring_without_filter(self, filter): return self.querystring(filter)