[PATCH 3/3] kernelbase: More tests for dots in PathAllocCanonicalize

Jeff Smith whydoubt at gmail.com
Wed Sep 18 12:12:11 CDT 2019


Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47766
Signed-off-by: Jeff Smith <whydoubt at gmail.com>
---
 dlls/kernelbase/tests/path.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/dlls/kernelbase/tests/path.c b/dlls/kernelbase/tests/path.c
index d7492a1e9f..0a4295deef 100644
--- a/dlls/kernelbase/tests/path.c
+++ b/dlls/kernelbase/tests/path.c
@@ -84,16 +84,24 @@ static const struct alloccanonicalize_test alloccanonicalize_tests[] =
     {"..", "\\", 0, S_OK},
     {"...", "\\", 0, S_OK},
     {"*.", "*.", 0, S_OK},
+    {"*.\\", "*.\\", 0, S_OK},
     {"*..", "*.", 0, S_OK},
+    {"*..\\", "*..\\", 0, S_OK},
     {"*...", "*.", 0, S_OK},
+    {"*...\\", "*...\\", 0, S_OK},
     {"*....", "*.", 0, S_OK},
+    {"*....\\", "*....\\", 0, S_OK},
     {".a", ".a", 0, S_OK},
+    {".a\\", ".a\\", 0, S_OK},
     {"a.", "a", 0, S_OK},
+    {"a.\\", "a.\\", 0, S_OK},
     {".a.", ".a", 0, S_OK},
     {"a.b", "a.b", 0, S_OK},
     {".a.b.", ".a.b", 0, S_OK},
     {"a\\.", "a", 0, S_OK},
     {"a\\.\\b", "a\\b", 0, S_OK},
+    {"a\\.b", "a\\.b", 0, S_OK},
+    {"a\\.b\\", "a\\.b\\", 0, S_OK},
     {":.", ":", 0, S_OK},
     {"C:.", "C:\\", 0, S_OK},
     {"C:.\\", "C:.\\", 0, S_OK},
@@ -101,7 +109,9 @@ static const struct alloccanonicalize_test alloccanonicalize_tests[] =
     {"C:\\.", "C:\\", 0, S_OK},
     {"C:\\.\\", "C:\\", 0, S_OK},
     {"C:\\a.", "C:\\a", 0, S_OK},
+    {"C:\\a.\\", "C:\\a.\\", 0, S_OK},
     {"C:\\.a", "C:\\.a", 0, S_OK},
+    {"C:\\.a\\", "C:\\.a\\", 0, S_OK},
     {"C:\\a\\.", "C:\\a", 0, S_OK},
     {"C:\\a\\\\.", "C:\\a\\", 0, S_OK},
     {"C:\\a\\\\\\.", "C:\\a\\\\", 0, S_OK},
@@ -126,11 +136,16 @@ static const struct alloccanonicalize_test alloccanonicalize_tests[] =
 
     /* .. */
     {"..a", "..a", 0, S_OK},
+    {"..a\\", "..a\\", 0, S_OK},
     {"...a", "...a", 0, S_OK},
+    {"...a\\", "...a\\", 0, S_OK},
     {"....a", "....a", 0, S_OK},
     {"a..", "a", 0, S_OK},
+    {"a..\\", "a..\\", 0, S_OK},
     {"a...", "a", 0, S_OK},
+    {"a...\\", "a...\\", 0, S_OK},
     {"a....", "a", 0, S_OK},
+    {"a....\\", "a....\\", 0, S_OK},
     {"..a..", "..a", 0, S_OK},
     {"a..b", "a..b", 0, S_OK},
     {"..a..b..", "..a..b", 0, S_OK},
@@ -145,9 +160,13 @@ static const struct alloccanonicalize_test alloccanonicalize_tests[] =
     {"C:...\\", "C:...\\", 0, S_OK},
     {"C:\\..", "C:\\", 0, S_OK},
     {"C:\\..a", "C:\\..a", 0, S_OK},
+    {"C:\\..a\\", "C:\\..a\\", 0, S_OK},
     {"C:\\...a", "C:\\...a", 0, S_OK},
+    {"C:\\...a\\", "C:\\...a\\", 0, S_OK},
     {"C:\\....a", "C:\\....a", 0, S_OK},
+    {"C:\\....a\\", "C:\\....a\\", 0, S_OK},
     {"C:\\a..", "C:\\a", 0, S_OK},
+    {"C:\\a..\\", "C:\\a..\\", 0, S_OK},
     {"C:\\\\..", "C:\\", 0, S_OK},
     {"C:\\..\\", "C:\\", 0, S_OK},
     {"C:\\...\\", "C:\\...\\", 0, S_OK},
-- 
2.21.0




More information about the wine-devel mailing list