Index: /trunk/src/VBox/Runtime/r3/nt/dirrel-r3-nt.cpp
===================================================================
--- /trunk/src/VBox/Runtime/r3/nt/dirrel-r3-nt.cpp	(revision 71850)
+++ /trunk/src/VBox/Runtime/r3/nt/dirrel-r3-nt.cpp	(revision 71851)
@@ -256,5 +256,28 @@
                                         &NtName, hRoot != NULL, pszDirAndFilter);
         if (RT_SUCCESS(rc))
+        {
+            /* Drop the filter from the NT name. */
+            switch (enmFilter)
+            {
+                case RTDIRFILTER_NONE:
+                    break;
+                case RTDIRFILTER_WINNT:
+                case RTDIRFILTER_UNIX:
+                case RTDIRFILTER_UNIX_UPCASED:
+                {
+                    size_t cwc = NtName.Length / sizeof(RTUTF16);
+                    while (   cwc > 0
+                           && NtName.Buffer[cwc - 1] != '\\')
+                        cwc--;
+                    NtName.Buffer[cwc] = '\0';
+                    NtName.Length = (uint16_t)(cwc * sizeof(RTUTF16));
+                    break;
+                }
+                default:
+                    AssertFailedBreak();
+            }
+
             rc = rtDirOpenRelativeOrHandle(phDir, szAbsDirAndFilter, enmFilter, fFlags, (uintptr_t)hRoot, &NtName);
+        }
         RTNtPathFree(&NtName, NULL);
     }
