Mercurial > hg
view tests/test-subrepo-svn.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 | 33119d0252c1 |
children |
line wrap: on
line source
% create subversion repo Checked out revision 0. A src A src/alpha A externals A externals/other Adding externals Adding externals/other Adding src Adding src/alpha Transmitting file data .. Committed revision 1. At revision 1. property 'svn:externals' set on 'src' Sending src Committed revision 2. % create hg repo % first revision, no sub adding a % add first svn sub with leading whitespaces committing subrepository s % debugsub path s source file:///root/svn-repo/src revision 2 % change file in svn and hg, commit committing subrepository s Sending s/alpha Transmitting file data . Committed revision 3. Fetching external item into 's/externals' External at revision 1. At revision 3. path s source file:///root/svn-repo/src revision 3 % should be empty despite change to s/a % add a commit from svn U alpha Fetching external item into 'externals' A externals/other Updated external to revision 1. Updated to revision 3. property 'svn:mime-type' set on 'alpha' Sending src/alpha Transmitting file data . Committed revision 4. % this commit from hg will fail committing subrepository s abort: svn: Commit failed (details follow): svn: File '/src/alpha' is out of date % this commit fails because of meta changes property 'svn:mime-type' set on 's/alpha' committing subrepository s abort: svn: Commit failed (details follow): svn: File '/src/alpha' is out of date % this commit fails because of externals changes committing subrepository s abort: cannot commit svn externals % this commit fails because of externals meta changes property 'svn:mime-type' set on 's/externals/other' committing subrepository s abort: cannot commit svn externals % clone updating to branch default A tc/s/alpha U tc/s Fetching external item into 'tc/s/externals' A tc/s/externals/other Checked out external at revision 1. Checked out revision 3. 3 files updated, 0 files merged, 0 files removed, 0 files unresolved % debugsub in clone path s source file:///root/svn-repo/src revision 3 % verify subrepo is contained within the repo directory True