Kaydet (Commit) 20c6ba6f authored tarafından Tim Graham's avatar Tim Graham

Fixed #24962 -- Added newline to characters escaped by contrib.admin.utils.quote()

Thanks alito for the report and patch.
üst 74261bc5
...@@ -68,7 +68,7 @@ def quote(s): ...@@ -68,7 +68,7 @@ def quote(s):
res = list(s) res = list(s)
for i in range(len(res)): for i in range(len(res)):
c = res[i] c = res[i]
if c in """:/_#?;@&=+$,"[]<>%\\""": if c in """:/_#?;@&=+$,"[]<>%\n\\""":
res[i] = '_%02X' % ord(c) res[i] = '_%02X' % ord(c)
return ''.join(res) return ''.join(res)
......
...@@ -9,7 +9,7 @@ from django.contrib import admin ...@@ -9,7 +9,7 @@ from django.contrib import admin
from django.contrib.admin import helpers from django.contrib.admin import helpers
from django.contrib.admin.utils import ( from django.contrib.admin.utils import (
NestedObjects, display_for_field, flatten, flatten_fieldsets, NestedObjects, display_for_field, flatten, flatten_fieldsets,
label_for_field, lookup_field, label_for_field, lookup_field, quote,
) )
from django.db import DEFAULT_DB_ALIAS, models from django.db import DEFAULT_DB_ALIAS, models
from django.test import TestCase, override_settings from django.test import TestCase, override_settings
...@@ -379,3 +379,6 @@ class UtilsTests(TestCase): ...@@ -379,3 +379,6 @@ class UtilsTests(TestCase):
}), }),
) )
self.assertEqual(flatten_fieldsets(fieldsets), ['url', 'title', 'content', 'sites']) self.assertEqual(flatten_fieldsets(fieldsets), ['url', 'title', 'content', 'sites'])
def test_quote(self):
self.assertEqual(quote('something\nor\nother'), 'something_0Aor_0Aother')
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment