[PATCH 2/6] ntdll/actctx: Don't stop looking for manifest if dll without manifest is found

Fabian Maurer dark.shadow4 at web.de
Tue Aug 7 12:45:08 CDT 2018


Signed-off-by: Fabian Maurer <dark.shadow4 at web.de>
---
 dlls/mscoree/tests/comtest.c | 1 -
 dlls/ntdll/actctx.c          | 5 ++++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/dlls/mscoree/tests/comtest.c b/dlls/mscoree/tests/comtest.c
index 687149cf57..63e43f4b95 100644
--- a/dlls/mscoree/tests/comtest.c
+++ b/dlls/mscoree/tests/comtest.c
@@ -177,7 +177,6 @@ static void prepare_and_run_test(int run, const char *dll_source)
     context.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
 
     handle_context = CreateActCtxA(&context);
-    todo_wine
     ok(handle_context != NULL && handle_context != INVALID_HANDLE_VALUE, "run %d: CreateActCtxA failed: %d\n", run, GetLastError());
 
     if (handle_context == NULL || handle_context == INVALID_HANDLE_VALUE)
diff --git a/dlls/ntdll/actctx.c b/dlls/ntdll/actctx.c
index 7e3aec4d1e..92fa16fb71 100644
--- a/dlls/ntdll/actctx.c
+++ b/dlls/ntdll/actctx.c
@@ -3294,7 +3294,10 @@ static NTSTATUS lookup_assembly(struct actctx_loader* acl,
                 status = get_manifest_in_pe_file( acl, ai, nameW.Buffer, directory, FALSE, file,
                                                   (LPCWSTR)CREATEPROCESS_MANIFEST_RESOURCE_ID, 0 );
                 NtClose( file );
-                break;
+                if (status == 0)
+                    break;
+                else
+                    continue;
             }
             RtlFreeUnicodeString( &nameW );
         }
-- 
2.18.0




More information about the wine-devel mailing list