Forráskód Böngészése

merged from the lp:~mvo/apt/mvo branch

Michael Vogt 13 éve
szülő
commit
6123004833
2 módosított fájl, 8 hozzáadás és 1 törlés
  1. 6 1
      apt-pkg/deb/dpkgpm.cc
  2. 2 0
      debian/changelog

+ 6 - 1
apt-pkg/deb/dpkgpm.cc

@@ -423,7 +423,7 @@ bool pkgDPkgPM::RunScriptsWithPkgs(const char *Cnf)
 void pkgDPkgPM::DoStdin(int master)
 {
    unsigned char input_buf[256] = {0,}; 
-   ssize_t len = read(0, input_buf, sizeof(input_buf));
+   ssize_t len = read(STDIN_FILENO, input_buf, sizeof(input_buf));
    if (len)
       FileFd::Write(master, input_buf, len);
    else
@@ -1231,6 +1231,11 @@ bool pkgDPkgPM::Go(int OutStatusFd)
 	    tcsetattr(0, TCSAFLUSH, &rtt);
 	    sigprocmask(SIG_SETMASK, &original_sigmask, 0);
 	 }
+      } else {
+         const char *s = _("Can not write log, tcgetattr() failed for stdout");
+         fprintf(stderr, "%s", s);
+         if(d->term_out)
+            fprintf(d->term_out, "%s",s); 
       }
        // Fork dpkg
       pid_t Child;

+ 2 - 0
debian/changelog

@@ -17,6 +17,8 @@ apt (0.9.8~exp1) UNRELEASED; urgency=low
   * apt-pkg/deb/dpkgpm.cc:
     - use tcgetattr() on STDOUT instead of STDIN so that term.log
       works for redirected stdin
+    - print error in log if tcgetattr() fails instead of writing
+      a empty file
 
  -- David Kalnischkies <kalnischkies@gmail.com>  Mon, 09 Jul 2012 17:36:40 +0200