]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Solaris: set VG_(resolved_exename) in load_client()
authorPaul Floyd <pjfloyd@wanadoo.fr>
Sat, 3 Jan 2026 17:24:34 +0000 (18:24 +0100)
committerPaul Floyd <pjfloyd@wanadoo.fr>
Sat, 3 Jan 2026 17:24:34 +0000 (18:24 +0100)
Haven't needed it yet, but I would like to try using it in the
readlink syscall wrapper.

coregrind/m_initimg/initimg-solaris.c

index 79072f3a85df0f47ed049e5b906664b4195021ec..bd2d822e5d208f3cf9c21ce3456e46138cb8cb2c 100644 (file)
@@ -94,6 +94,15 @@ static void load_client(/*OUT*/ExeInfo *info,
       /*NOTREACHED*/
    }
    VG_(strcpy)(out_exe_name, exe_name);
+   if (VG_(resolved_exename) == NULL) {
+      HChar interp_name[VKI_PATH_MAX];
+      if (VG_(try_get_interp)(exe_name, interp_name, VKI_PATH_MAX)) {
+         exe_name = interp_name;
+      }
+      HChar resolved_name[VKI_PATH_MAX];
+      VG_(realpath)(exe_name, resolved_name);
+      VG_(resolved_exename) = VG_(strdup)("initimg-solaris.lc.1", resolved_name);
+   }
 
    /* Set initial brk values. */
    if (info->ldsoexec) {