From: Joe Souza jsouza@yahoo.com
--- programs/cmd/directory.c | 8 +++++++- programs/cmd/tests/test_builtins.cmd.exp | 8 ++++---- 2 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/programs/cmd/directory.c b/programs/cmd/directory.c index ac4ecfed2e6..96174a3f4fc 100644 --- a/programs/cmd/directory.c +++ b/programs/cmd/directory.c @@ -769,7 +769,13 @@ RETURN_CODE WCMD_directory(WCHAR *args) goto exit; } break; - case 'O': p = p + 1; + case 'O': /* Reset order state for each occurrence of /O, i.e. if DIRCMD contains /O and user + also specified /O on the command line. */ + dirOrder = Unspecified; + orderGroupDirs = FALSE; + orderReverse = FALSE; + orderGroupDirsReverse = FALSE; + p = p + 1; if (*p==':') p++; /* Skip optional : */ while (*p && *p != '/') { WINE_TRACE("Processing subparm '%c' (in %s)\n", *p, wine_dbgstr_w(quals)); diff --git a/programs/cmd/tests/test_builtins.cmd.exp b/programs/cmd/tests/test_builtins.cmd.exp index 875a1f3f8e8..dde889755aa 100644 --- a/programs/cmd/tests/test_builtins.cmd.exp +++ b/programs/cmd/tests/test_builtins.cmd.exp @@ -1858,11 +1858,11 @@ a1.ac a2.aa a1.aa --- -@todo_wine@a2.ac -@todo_wine@a1.ab -@todo_wine@a2.aa +a2.ac +a1.ab +a2.aa a1.ac -@todo_wine@a1.aa +a1.aa ------------ Testing attrib ------------ A@spaces@@drive@@path@foobar\foo@or_broken@A I@spaces@@drive@@path@foobar\foo A@spaces@@drive@@path@foobar\foo@or_broken@A I@spaces@@drive@@path@foobar\foo