Bug 203692 - Change of behaviour breaks psset
Change of behaviour breaks psset
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: sed (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Petr Machata
Ben Levenson
Depends On:
Blocks: 203697
  Show dependency treegraph
Reported: 2006-08-23 04:31 EDT by Bastien Nocera
Modified: 2015-05-04 21:32 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2007-05-23 13:37:59 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Fix for RHEL-3 (570 bytes, patch)
2007-05-23 13:33 EDT, Petr Machata
no flags Details | Diff

  None (edit)
Description Bastien Nocera 2006-08-23 04:31:26 EDT
The behaviour is actually broken on RHEL3, not RHEL4.

+++ This bug was initially created as a clone of Bug #203339 +++

psset will generate broken PS output when used on RHEL4.

1. Run
ls | a2ps -o - | psset -t > test.ps
2. Notice the broken ps on RHEL4 (where it works on RHEL3)

The bug (control characters where there should be text) is due to a change in
sed's behaviour.

RHEL3, sed-4.0.7-3:
$ echo ''|sed -e ' i\\co' | hexdump -C
00000000  5c 63 6f 0a 0a                                    |\co..|

RHEL4, sed-4.1.2-4:
$ echo ''|sed -e ' i\\co' | hexdump -C
00000000  0f 0a 0a                                          |...|

RHEL4, with RHEL3's sed:
$ echo ''|./sed -e ' i\\co' | hexdump -C
00000000  5c 63 6f 0a 0a                                    |\co..|

-- Additional comment from pmachata@redhat.com on 2006-08-22 13:36 EST --
Hmm... yes, there indeed is a change in behavior.  However it seems to me that
the new version is correct in handling backslashes, and that the right way to
write the sequence '\co' is with 'i\\\co'.  First '\' is the delimiter (which
can be missing, but if it's here, it has to be the delimiter), following '\\' is
escaped backslash, and then 'co'.  In contrast, 'i\\co' interprets \c as escape
and turns 'o' into control character.
If you retarget this bug against EL3, I will adjust the behavior of sed there.
Comment 1 Petr Machata 2007-05-23 13:33:25 EDT
Created attachment 155279 [details]
Fix for RHEL-3

Note You need to log in before you can comment on or make changes to this bug.