summaryrefslogtreecommitdiff
path: root/apt-pkg/deb/dpkgpm.cc
diff options
context:
space:
mode:
authorDavid Kalnischkies <kalnischkies@gmail.com>2010-01-19 13:08:01 +0100
committerDavid Kalnischkies <kalnischkies@gmail.com>2010-01-19 13:08:01 +0100
commit3ad676a1420f65b4de3d1742c09f6e7e3966652c (patch)
tree8c067300508497308ea81afed1245060fa245684 /apt-pkg/deb/dpkgpm.cc
parent6de692d84ab70299ae61767460c179c6a2676b74 (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.cc7
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;
}