comparison mercurial/templatefilters.py @ 21873:cf599f8a2da8

merge with stable
author Matt Mackall <mpm@selenic.com>
date Mon, 14 Jul 2014 18:53:03 -0500
parents cce404b0c918 829f2dd99f5c
children 13e3f07d74a3
comparison
equal deleted inserted replaced
21872:abae1eb695c0 21873:cf599f8a2da8
214 return '\\u%04x' % ord(c) 214 return '\\u%04x' % ord(c)
215 215
216 _escapes = [ 216 _escapes = [
217 ('\\', '\\\\'), ('"', '\\"'), ('\t', '\\t'), ('\n', '\\n'), 217 ('\\', '\\\\'), ('"', '\\"'), ('\t', '\\t'), ('\n', '\\n'),
218 ('\r', '\\r'), ('\f', '\\f'), ('\b', '\\b'), 218 ('\r', '\\r'), ('\f', '\\f'), ('\b', '\\b'),
219 ('<', '\\u003c'), ('>', '\\u003e') 219 ('<', '\\u003c'), ('>', '\\u003e'), ('\0', '\\u0000')
220 ] 220 ]
221 221
222 def jsonescape(s): 222 def jsonescape(s):
223 for k, v in _escapes: 223 for k, v in _escapes:
224 s = s.replace(k, v) 224 s = s.replace(k, v)