diff --git a/dlls/dbghelp/dbghelp.c b/dlls/dbghelp/dbghelp.c
index a2dba4cfe3e5639a0bb05f24ef573b00a699baef..9d33bc67f2bfcf9420312caa3e47d53acde86bdd 100644
--- a/dlls/dbghelp/dbghelp.c
+++ b/dlls/dbghelp/dbghelp.c
@@ -354,7 +354,9 @@ static BOOL check_live_target(struct process* pcs)
     if (!base) return FALSE;
 
     TRACE("got debug info address %#lx from PEB %p\n", base, pbi.PebBaseAddress);
-    return elf_read_wine_loader_dbg_info(pcs, base) || macho_read_wine_loader_dbg_info(pcs, base);
+    if (!elf_read_wine_loader_dbg_info(pcs, base) && !macho_read_wine_loader_dbg_info(pcs, base))
+        WARN("couldn't load process debug info at %#lx\n", base);
+    return TRUE;
 }
 
 /******************************************************************
@@ -456,7 +458,7 @@ BOOL WINAPI SymInitializeW(HANDLE hProcess, PCWSTR UserSearchPath, BOOL fInvadeP
     {
         if (fInvadeProcess)
             EnumerateLoadedModulesW64(hProcess, process_invade_cb, hProcess);
-        pcs->loader->synchronize_module_list(pcs);
+        if (pcs->loader) pcs->loader->synchronize_module_list(pcs);
     }
     else if (fInvadeProcess)
     {