Django

Code

Ticket #6831: 0001-Replace-backslash-in-reverse-URL-resolver.patch

File 0001-Replace-backslash-in-reverse-URL-resolver.patch, 1.7 kB (added by Bastian Kleineidam <calvin@debian.org>, 10 months ago)
  • a/django/core/urlresolvers.py

    old new  
    8686    """ 
    8787    # TODO: Handle nested parenthesis in the following regex. 
    8888    result = re.sub(r'\(([^)]+)\)', MatchChecker(args, kwargs), regex.pattern) 
    89     return result.replace('^', '').replace('$', '') 
     89    return result.replace('^', '').replace('$', '').replace('\\', '') 
    9090 
    9191class MatchChecker(object): 
    9292    "Class used in reverse RegexURLPattern lookup." 
  • a/tests/regressiontests/urlpatterns_reverse/tests.py

    old new  
    1717    ('^hardcoded/$', 'hardcoded/', [], {}), 
    1818    ('^hardcoded/$', 'hardcoded/', ['any arg'], {}), 
    1919    ('^hardcoded/$', 'hardcoded/', [], {'kwarg': 'foo'}), 
     20    ('^hardcoded/doc\\.pdf$', 'hardcoded/doc.pdf', [], {}), 
    2021    ('^people/(?P<state>\w\w)/(?P<name>\w+)/$', 'people/il/adrian/', [], {'state': 'il', 'name': 'adrian'}), 
    2122    ('^people/(?P<state>\w\w)/(?P<name>\d)/$', NoReverseMatch, [], {'state': 'il', 'name': 'adrian'}), 
    2223    ('^people/(?P<state>\w\w)/(?P<name>\w+)/$', NoReverseMatch, [], {'state': 'il'}),