Gerald Pfeifer : ntdll: Always return a value in get_builtin_init_funcs.

Alexandre Julliard julliard at winehq.org
Thu Aug 19 16:00:05 CDT 2021


Module: wine
Branch: master
Commit: 6468e445bd29b4c2eb006cd64623e21127ed0151
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=6468e445bd29b4c2eb006cd64623e21127ed0151

Author: Gerald Pfeifer <gerald at pfeifer.com>
Date:   Thu Aug 19 01:36:39 2021 +0200

ntdll: Always return a value in get_builtin_init_funcs.

This only showed up in the #ifdef __FreeBSD__ case, so did not appear
on other platforms during testing.

Signed-off-by: Gerald Pfeifer <gerald at pfeifer.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/ntdll/unix/loader.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/dlls/ntdll/unix/loader.c b/dlls/ntdll/unix/loader.c
index a8e145de16e..2dde2332a6a 100644
--- a/dlls/ntdll/unix/loader.c
+++ b/dlls/ntdll/unix/loader.c
@@ -1729,7 +1729,8 @@ NTSTATUS get_builtin_init_funcs( void *handle, void **funcs, SIZE_T len, SIZE_T
 #ifdef __FreeBSD__
         /* On older FreeBSD versions, l_addr was the absolute load address, now it's the relocation offset. */
         if (offsetof(struct link_map, l_addr) == 0)
-            if (!get_relocbase(map->l_addr, &relocbase)) return;
+            if (!get_relocbase(map->l_addr, &relocbase))
+                return STATUS_NOT_SUPPORTED;
 #endif
         switch (dyn->d_tag)
         {




More information about the wine-cvs mailing list