From: Paul Floyd Date: Sat, 3 Jan 2026 17:24:34 +0000 (+0100) Subject: Solaris: set VG_(resolved_exename) in load_client() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bf154d815a9fd7f4aaae97e31aa03cecf69448d4;p=thirdparty%2Fvalgrind.git Solaris: set VG_(resolved_exename) in load_client() Haven't needed it yet, but I would like to try using it in the readlink syscall wrapper. --- diff --git a/coregrind/m_initimg/initimg-solaris.c b/coregrind/m_initimg/initimg-solaris.c index 79072f3a8..bd2d822e5 100644 --- a/coregrind/m_initimg/initimg-solaris.c +++ b/coregrind/m_initimg/initimg-solaris.c @@ -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) {