diff --git a/dlls/mpr/wnet.c b/dlls/mpr/wnet.c index fab91c760ba..0d4209c1d39 100644 --- a/dlls/mpr/wnet.c +++ b/dlls/mpr/wnet.c @@ -760,6 +760,11 @@ DWORD WINAPI WNetOpenEnumW( DWORD dwScope, DWORD dwType, DWORD dwUsage, providerTable->table[index].dwEnumScopes & WNNC_ENUM_GLOBAL) { HANDLE handle; + PWSTR RemoteName = lpNet->lpRemoteName; + + if ((lpNet->dwUsage & RESOURCEUSAGE_CONTAINER) && + RemoteName && !strcmpW(RemoteName, lpNet->lpProvider)) + lpNet->lpRemoteName = NULL; ret = providerTable->table[index].openEnum( dwScope, dwType, dwUsage, lpNet, &handle); @@ -770,6 +775,8 @@ DWORD WINAPI WNetOpenEnumW( DWORD dwScope, DWORD dwType, DWORD dwUsage, ret = *lphEnum ? WN_SUCCESS : WN_OUT_OF_MEMORY; } + + lpNet->lpRemoteName = RemoteName; } else ret = WN_NOT_SUPPORTED;