Fixing the issue4860. Escaping embedded '"' character in js_output() method of Morsel.
This commit is contained in:
parent
985951df7f
commit
c730a6a123
|
@ -477,7 +477,7 @@ class Morsel(dict):
|
|||
document.cookie = \"%s\";
|
||||
// end hiding -->
|
||||
</script>
|
||||
""" % ( self.OutputString(attrs), )
|
||||
""" % ( self.OutputString(attrs).replace('"',r'\"'), )
|
||||
# end js_output()
|
||||
|
||||
def OutputString(self, attrs=None):
|
||||
|
|
|
@ -51,17 +51,17 @@ class CookieTests(unittest.TestCase):
|
|||
|
||||
self.assertEqual(C.output(['path']),
|
||||
'Set-Cookie: Customer="WILE_E_COYOTE"; Path=/acme')
|
||||
self.assertEqual(C.js_output(), """
|
||||
self.assertEqual(C.js_output(), r"""
|
||||
<script type="text/javascript">
|
||||
<!-- begin hiding
|
||||
document.cookie = "Customer="WILE_E_COYOTE"; Path=/acme; Version=1";
|
||||
document.cookie = "Customer=\"WILE_E_COYOTE\"; Path=/acme; Version=1";
|
||||
// end hiding -->
|
||||
</script>
|
||||
""")
|
||||
self.assertEqual(C.js_output(['path']), """
|
||||
self.assertEqual(C.js_output(['path']), r"""
|
||||
<script type="text/javascript">
|
||||
<!-- begin hiding
|
||||
document.cookie = "Customer="WILE_E_COYOTE"; Path=/acme";
|
||||
document.cookie = "Customer=\"WILE_E_COYOTE\"; Path=/acme";
|
||||
// end hiding -->
|
||||
</script>
|
||||
""")
|
||||
|
|
Loading…
Reference in New Issue