[bringing in [email protected]]
QXO <[email protected]> writes:
> os: windows
> encoding:GBK ( chcp 936 )
>
> The svnadmin upgrade command output message first line encoding
> issue(UTF-8 show in GBK),But the second line is right encoding!
>
> 宸插彇寰楃増鏈簱閿佸畾銆?璇风◢鍊欙紱鍗囩骇鐗堟湰搴撳彲鑳介渶瑕佷竴娈垫椂闂?..
>
> 完成升级。
>
> if change console encoding to UTF-8 (chcp 65001),output message is :
>
> Repository lock acquired.
> Please wait; upgrading the repository may take some time...
>
> Upgrade completed.
Those two lines are produced by different code paths. The first line
is produced by repos_notify_handler:
svn_error_clear(svn_stream_printf(feedback_stream, scratch_pool,
_("Repository lock acquired.\n"
"Please wait; upgrading the"
" repository may take some time...\n")));
The second line is produced by:
SVN_ERR(svn_cmdline_printf(pool, _("\nUpgrade completed.\n")));
and svn_cmdline_printf uses svn_cmdline_cstring_from_utf8 to do a UTF8
to native conversion.
So it appears the UTF8 to native conversion is missing from
repos_notify_handler. I think repos_notify_handler should be using
svn_stream_printf_from_utf8 rather than svn_stream_printf.
--
Certified & Supported Apache Subversion Downloads:
http://www.wandisco.com/subversion/download