This commit restores the missing space between command
lines and the environment when the later is being
displayed. Below is a brief history of that elusive
character.
commit
bb4f08ba297a67a043f7547670aa8623b54c2e67
Date: Thu Aug 11 07:42:14 2011 +1000
The ps program was altered for improved args/comm
compliance. At this time, the needed space was
present due to a buglet in the new library
read_unvectored function used by fill_cmdline_cvt.
commit
a5881b5a4e5056d13906ce6128f6aa180d67d60e
Date: Thu Dec 8 10:19:38 2011 -0600
The trailing space was eliminated so that the
file2strvec and fill_cmdline_cvt returned
command lines contained no trailing space.
However, this created a buglet when control group
hierarchies were displayed and the final cgroup
was empty.
This is also where the undetected ps buglet was
created.
commit
c3a1239efee4d720080f216547be4cd22253f861
Date: Sun Dec 11 12:00:50 2011 -0600
The control group anomaly was fixed but the impact
on ps args/environ was still not detected.
Signed-off-by: Jim Warner <james.warner@comcast.net>
endp += escape_command(endp, pp, OUTBUF_SIZE, &rightward, ESC_DEFUNCT);
if(bsd_e_option && rightward>1) {
- if(pp->environ && *pp->environ)
+ if(pp->environ && *pp->environ) {
+ *endp++ = ' ';
+ rightward--;
endp += escape_strlist(endp, pp->environ, OUTBUF_SIZE, &rightward);
+ }
}
return max_rightward-rightward;
}
endp += escape_command(endp, pp, OUTBUF_SIZE, &rightward, ESC_DEFUNCT);
if(bsd_e_option && rightward>1) {
- if(pp->environ && *pp->environ)
+ if(pp->environ && *pp->environ) {
+ *endp++ = ' ';
+ rightward--;
endp += escape_strlist(endp, pp->environ, OUTBUF_SIZE, &rightward);
+ }
}
return max_rightward-rightward;
}