X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/51f9f4d78deabf54dbbb6881139d2b1a319ffbfc..4d7ac88c6827fab1e25238415ed0ebdf7d7f5404:/apt-pkg/deb/dpkgpm.cc diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc index 88098c379..8abe3f5c6 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc @@ -580,10 +580,11 @@ bool pkgDPkgPM::OpenLog() if (!logfile_name.empty()) { term_out = fopen(logfile_name.c_str(),"a"); + if (term_out == NULL) + return _error->WarningE(_("Could not open file '%s'"), logfile_name.c_str()); + chmod(logfile_name.c_str(), 0600); - fprintf(term_out, "\n\nLog started: "); - fprintf(term_out, "%s", timestr); - fprintf(term_out, "\n"); + fprintf(term_out, "\nLog started: %s\n", timestr); } // write @@ -945,6 +946,7 @@ bool pkgDPkgPM::Go(int OutStatusFd) rtt = tt; cfmakeraw(&rtt); rtt.c_lflag &= ~ECHO; + rtt.c_lflag |= ISIG; // block SIGTTOU during tcsetattr to prevent a hang if // the process is a member of the background process group // http://www.opengroup.org/onlinepubs/000095399/functions/tcsetattr.html