File: 0001-fix-argv0-of-cmd-array-not-resolved-by-find_prog.patch

package info (click to toggle)
muon-meson 0.5.0-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 13,532 kB
  • sloc: ansic: 67,766; python: 4,391; cpp: 1,983; sh: 709; javascript: 570; asm: 226; xml: 67; objc: 36; makefile: 29; modula3: 8; f90: 7
file content (39 lines) | stat: -rw-r--r-- 1,153 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
From: Stone Tickle <lattis@mochiro.moe>
Date: Wed, 20 Aug 2025 11:08:21 -0400
Subject: fix argv0 of cmd array not resolved by find_prog

Description: In the case where the command was set using an env
 override.
 .
 This fixes various tests when samu integration is disabled.
Origin: upstream, https://git.sr.ht/~lattis/muon/commit/54869735ec403e0bc1a3ec892e656bb9ec63953a
Forwarded: not-needed
---
 src/functions/kernel.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/functions/kernel.c b/src/functions/kernel.c
index 5d464a4..04bc30a 100644
--- a/src/functions/kernel.c
+++ b/src/functions/kernel.c
@@ -824,11 +824,20 @@ find_program_step_4:
 
 		if (program_specific_envvar) {
 			get_option_value(wk, NULL, program_specific_envvar, &cmd_array);
+			if (get_obj_array(wk, cmd_array)->len < 1) {
+				LOG_E("program option %s is an empty array", program_specific_envvar);
+				return false;
+			}
+			str = get_cstr(wk, obj_array_index(wk, cmd_array, 0));
 		}
 	}
 
 	if (fs_find_cmd(wk, &buf, str)) {
 		path = buf.buf;
+
+		if (cmd_array) {
+			obj_array_set(wk, cmd_array, 0, tstr_into_str(wk, &buf));
+		}
 		goto found;
 	}