diff options
-rw-r--r-- | debian/changelog | 9 | ||||
-rw-r--r-- | methods/gzip.cc | 7 |
2 files changed, 15 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog index 385c8ca23..a828d02c1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +apt (0.6.46.1) unstable; urgency=low + + * methods/gzip.cc: + - deal with empty files + + -- + apt (0.6.46) unstable; urgency=low * debian/control: @@ -32,7 +39,7 @@ apt (0.6.46) unstable; urgency=low - reverted MMap use in the tagfile because it does not work across pipes (closes: #383487) - -- + -- Michael Vogt <mvo@debian.org> Thu, 21 Sep 2006 10:25:03 +0200 apt (0.6.45) unstable; urgency=low diff --git a/methods/gzip.cc b/methods/gzip.cc index 55ff33270..a8e816bf3 100644 --- a/methods/gzip.cc +++ b/methods/gzip.cc @@ -52,6 +52,13 @@ bool GzipMethod::Fetch(FetchItem *Itm) // Open the source and destination files FileFd From(Path,FileFd::ReadOnly); + // if the file is empty, just rename it and return + if(From.Size() == 0) + { + Rename(Path, Itm->DestFile); + return true; + } + int GzOut[2]; if (pipe(GzOut) < 0) return _error->Errno("pipe",_("Couldn't open pipe for %s"),Prog); |