Module: wine Branch: master Commit: cd9451c4993ae852df69cac4fe22e2838ae9fbe1 URL: http://source.winehq.org/git/wine.git/?a=commit;h=cd9451c4993ae852df69cac4fe...
Author: Jason Edmeades jason@edmeades.me.uk Date: Tue Sep 25 23:16:54 2012 +0100
cmd: Display 'set' sort ordering correctly.
---
programs/cmd/builtins.c | 5 ++++- programs/cmd/tests/test_builtins.cmd.exp | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/programs/cmd/builtins.c b/programs/cmd/builtins.c index ad9d40c..8421194 100644 --- a/programs/cmd/builtins.c +++ b/programs/cmd/builtins.c @@ -2234,13 +2234,16 @@ void WCMD_setshow_date (void) {
/**************************************************************************** * WCMD_compare + * Note: Native displays 'fred' before 'fred ', so need to only compare up to + * the equals sign. */ static int WCMD_compare( const void *a, const void *b ) { int r; const WCHAR * const *str_a = a, * const *str_b = b; + static const WCHAR eqW[] = {'=','\0'}; r = CompareStringW( LOCALE_USER_DEFAULT, NORM_IGNORECASE | SORT_STRINGSORT, - *str_a, -1, *str_b, -1 ); + *str_a, strcspnW(*str_a, eqW), *str_b, strcspnW(*str_b, eqW) ); if( r == CSTR_LESS_THAN ) return -1; if( r == CSTR_GREATER_THAN ) return 1; return 0; diff --git a/programs/cmd/tests/test_builtins.cmd.exp b/programs/cmd/tests/test_builtins.cmd.exp index d2938ce..57bc82a 100644 --- a/programs/cmd/tests/test_builtins.cmd.exp +++ b/programs/cmd/tests/test_builtins.cmd.exp @@ -235,8 +235,8 @@ FOOBAR = baz baz2 0 bar -@todo_wine@FOOBAR= bar -@todo_wine@FOOBAR = baz2 +FOOBAR= bar +FOOBAR = baz2 FOOBAR = baz2 FOOBAR not defined 1