[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#507749: Mangled (CR without LF) dpkg output when tee-ing apt's output



Package: apt
Version: 0.7.18
Severity: minor

apt-pkg/deb/dpkgpm.cc uses cfmakeraw(3) to put the terminal into raw
mode whilst running dpkg subprocesses.

This has the undesirable effect of mangling the output if you are piping
it through tee:

apt-get -y install iotop | tee /tmp/apt.log
Reading package lists...
Building dependency tree...
Reading state information...
The following NEW packages will be installed
  iotop
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
                                                              Need to g
et 0B/12.7kB of archives.
                         After this operation, 143kB of additional disk
 space will be used.
                    Selecting previously deselected package iotop.
                                                                  (Read
ing database ... 120173 files and directories currently installed.)
                                                                   Unpa
cking iotop (from .../archives/iotop_0.2-3_all.deb) ...
                                                       Processing trigg
ers for man-db ...
                  Setting up iotop (0.2-3) ...
                                              Processing triggers for p
ython-support ...


I tested by disabling the cfmakeraw call with an LD_PRELOAD shim, and
the output then looked right both with and without a pipe. Unfortunately
I don't know enough about terminal programming to assess what the
intended purpose of putting the terminal into raw mode could have been.



Reply to: