diff options
author | David Kalnischkies <kalnischkies@gmail.com> | 2010-01-19 13:08:01 +0100 |
---|---|---|
committer | David Kalnischkies <kalnischkies@gmail.com> | 2010-01-19 13:08:01 +0100 |
commit | 3ad676a1420f65b4de3d1742c09f6e7e3966652c (patch) | |
tree | 8c067300508497308ea81afed1245060fa245684 /apt-pkg/deb/dpkgpm.cc | |
parent | 6de692d84ab70299ae61767460c179c6a2676b74 (diff) |
* apt-pkg/deb/dpkgpm.cc:
- don't segfault if term.log file can't be opened.
Thanks Sam Brightman for the patch! (Closes: #475770)
Diffstat (limited to 'apt-pkg/deb/dpkgpm.cc')
-rw-r--r-- | apt-pkg/deb/dpkgpm.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc index d1a275a47..565f01b84 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc @@ -561,15 +561,16 @@ 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); // output current time char outstr[200]; time_t t = time(NULL); struct tm *tmp = localtime(&t); strftime(outstr, sizeof(outstr), "%F %T", tmp); - fprintf(term_out, "\nLog started: "); - fprintf(term_out, "%s", outstr); - fprintf(term_out, "\n"); + fprintf(term_out, "\nLog started: %s\n", outstr); } return true; } |