Mercurial > hg
view tests/test-mq-qdiff.out @ 11765:aff419e260f9 stable
templatefilters: make json filter handle multibyte characters correctly
It aims to fix javascript error of hgweb's graph view in Japanese 'cp932'
encoding.
'cp932' contains multibyte characters ending with '\x5c' (backslash),
e.g. '\x94\x5c' for Japanese Kanji 'Noh'.
Due to json filter escapes '\' to '\\', multibyte string ending with
'\x5c' is translated to "xxx\", resulting javascript parse error on
a web browser.
This patch changes json() to pass unicode to jsonescape().
Unicode decoding error handler changed to 'replace' by Patrick Mézard.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sat, 07 Aug 2010 16:27:16 +0900 |
parents | a84f14228b1d |
children |
line wrap: on
line source
% init % commit adding base % qnew mqbase % qrefresh % qdiff diff -r 67e992f2c4f3 base --- a/base +++ b/base @@ -1,1 +1,1 @@ -base +patched % qdiff dirname diff -r 67e992f2c4f3 base --- a/base +++ b/base @@ -1,1 +1,1 @@ -base +patched % qdiff filename diff -r 67e992f2c4f3 base --- a/base +++ b/base @@ -1,1 +1,1 @@ -base +patched % revert % qpop popping mqbase patch queue now empty % qdelete mqbase % commit 2 adding lines % qnew 2 % qdiff -U 1 diff -r 35fb829491c1 lines --- a/lines +++ b/lines @@ -1,1 +1,3 @@ + + 1 @@ -4,4 +6,4 @@ 4 -hello world -goodbye world +hello world + goodbye world 7 % qdiff -b diff -r 35fb829491c1 lines --- a/lines +++ b/lines @@ -1,9 +1,11 @@ + + 1 2 3 4 hello world -goodbye world + goodbye world 7 8 9 % qdiff -U 1 -B diff -r 35fb829491c1 lines --- a/lines +++ b/lines @@ -4,4 +6,4 @@ 4 -hello world -goodbye world +hello world + goodbye world 7 % qdiff -w diff -r 35fb829491c1 lines --- a/lines +++ b/lines @@ -1,3 +1,5 @@ + + 1 2 3 % qdiff --reverse diff -r 35fb829491c1 lines --- a/lines +++ b/lines @@ -1,11 +1,9 @@ - - 1 2 3 4 -hello world - goodbye world +hello world +goodbye world 7 8 9 % qdiff preserve existing git flag diff --git a/lines b/lines --- a/lines +++ b/lines @@ -1,9 +1,12 @@ + + 1 2 3 4 -hello world -goodbye world +hello world + goodbye world 7 8 9 +a % qdiff --stat lines | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-)