Let's not confuse users with the login shell indicator and drop it from
the description. This means a run0 session will now usually show up with
a description of "[run0] /bin/bash" rather than "[run0] -/bin/bash".
if (strv_isempty(arg_cmdline))
t = strdup(arg_unit);
- else
+ else if (startswith(arg_cmdline[0], "-")) {
+ /* Drop the login shell marker from the command line when generating the description,
+ * in order to minimize user confusion. */
+ _cleanup_strv_free_ char **l = strv_copy(arg_cmdline);
+ if (!l)
+ return log_oom();
+
+ r = free_and_strdup_warn(l + 0, l[0] + 1);
+ if (r < 0)
+ return r;
+
+ t = quote_command_line(l, SHELL_ESCAPE_EMPTY);
+ } else
t = quote_command_line(arg_cmdline, SHELL_ESCAPE_EMPTY);
if (!t)
return log_oom();