summaryrefslogtreecommitdiff
path: root/src/loader/backends
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-07-20 15:56:16 +0300
committerPaul Buetow <paul@buetow.org>2026-07-20 15:56:16 +0300
commit74f60c99446ad592b13119da8c79ccd19256b715 (patch)
tree8ae35e8c732053641087a8016981f45674788f90 /src/loader/backends
parent0b9dc4eec752d6d48aab696d06b33f4782e9db4f (diff)
opener: shell-argv command parsing with %f as one safe arg (hu0)
_expand_command now parses the command template with g_shell_parse_argv FIRST, then substitutes %f into the already-parsed argv elements, so %f is always exactly one argv value regardless of spaces or shell metacharacters in the path. Previously it split on literal spaces, breaking quoted commands like sh -c '...' and mis-splitting paths with spaces. opener_launch propagates parse errors (returns FALSE, sets GError) instead of launching malformed argv. A non-local GFile (no path) is now rejected with G_IO_ERROR_NOT_SUPPORTED rather than producing an argv with an embedded NULL. Tests: quoted, quoted-with-%f, escaped spaces, option flags, weird filename (quoted + unquoted), malformed (unclosed quote), empty command, direct argv-shape regression (one argv value), and no-local-path rejection.
Diffstat (limited to 'src/loader/backends')
0 files changed, 0 insertions, 0 deletions