Mercurial > public > mercurial-scm > hg
comparison mercurial/templatefilters.py @ 19882:55c763926a28 stable
json: add more paranoid escaping
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Wed, 09 Oct 2013 11:50:19 -0700 |
parents | 1afe5d3939db |
children | e828975722c8 |
comparison
equal
deleted
inserted
replaced
19880:ba2be32d14f2 | 19882:55c763926a28 |
---|---|
211 return '\\u%04x' % ord(c) | 211 return '\\u%04x' % ord(c) |
212 | 212 |
213 _escapes = [ | 213 _escapes = [ |
214 ('\\', '\\\\'), ('"', '\\"'), ('\t', '\\t'), ('\n', '\\n'), | 214 ('\\', '\\\\'), ('"', '\\"'), ('\t', '\\t'), ('\n', '\\n'), |
215 ('\r', '\\r'), ('\f', '\\f'), ('\b', '\\b'), | 215 ('\r', '\\r'), ('\f', '\\f'), ('\b', '\\b'), |
216 ('<', '\\u003c'), ('>', '\\u003e') | |
216 ] | 217 ] |
217 | 218 |
218 def jsonescape(s): | 219 def jsonescape(s): |
219 for k, v in _escapes: | 220 for k, v in _escapes: |
220 s = s.replace(k, v) | 221 s = s.replace(k, v) |