[Bug 210995] cat -v fails to tag characters in extended table with M- prefix with some locales

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Jul 11 03:52:59 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=210995

            Bug ID: 210995
           Summary: cat -v fails to tag characters in extended table with
                    M- prefix with some locales
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Keywords: patch
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: venture37 at geeklan.co.uk

Created attachment 172364
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=172364&action=edit
remove isprint check & switch setlocale() to use LC_ALL

Using the following test:
setenv LC_ALL de_CH.ISO8859-1
foreach i ( `jot 178 178 356` )
echo a | tr 'a' "\$i" | cat -v
end

output will contain some printable characters listed instead with a question
mark.

removing the !isprint() check for vflag results in printable characters being
displayed correctly again. Making the behaviour of cat -v consistent whether
locale is set to C (default) or another.

Attached patch removes the !isprint() check and switches from just setting
locale settings set in LC_CTYPE to LC_ALL to import all set locale variables.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list