Quellcode durchsuchen

Fail over
Author: jgg
Date: 1998-12-11 06:32:33 GMT
Fail over

Arch Librarian vor 22 Jahren
Ursprung
Commit
db890fdba1
3 geänderte Dateien mit 18 neuen und 4 gelöschten Zeilen
  1. 12 2
      apt-pkg/acquire-item.cc
  2. 2 1
      apt-pkg/acquire-item.h
  3. 4 1
      apt-pkg/acquire.cc

+ 12 - 2
apt-pkg/acquire-item.cc

@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description								/*{{{*/
-// $Id: acquire-item.cc,v 1.16 1998/12/11 06:01:23 jgg Exp $
+// $Id: acquire-item.cc,v 1.17 1998/12/11 06:32:33 jgg Exp $
 /* ######################################################################
 
    Acquire Item - Item to acquire
@@ -54,6 +54,7 @@ pkgAcquire::Item::~Item()
 void pkgAcquire::Item::Failed(string Message)
 {
    Status = StatIdle;
+   ErrorText = LookupTag(Message,"Message");
    if (QueueCounter <= 1)
    {
       /* This indicates that the file is not available right now but might
@@ -66,7 +67,6 @@ void pkgAcquire::Item::Failed(string Message)
 	 return;
       }
       
-      ErrorText = LookupTag(Message,"Message");
       Status = StatError;
       Owner->Dequeue(this);
    }   
@@ -474,3 +474,13 @@ string pkgAcqArchive::Describe()
    return Desc.URI;
 }
 									/*}}}*/
+// AcqArchive::Failed - Failure handler					/*{{{*/
+// ---------------------------------------------------------------------
+/* Here we try other sources */
+void pkgAcqArchive::Failed(string Message)
+{
+   ErrorText = LookupTag(Message,"Message");
+   if (QueueNext() == false)
+      Item::Failed(Message);
+}
+									/*}}}*/

+ 2 - 1
apt-pkg/acquire-item.h

@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description								/*{{{*/
-// $Id: acquire-item.h,v 1.11 1998/12/11 06:01:25 jgg Exp $
+// $Id: acquire-item.h,v 1.12 1998/12/11 06:32:34 jgg Exp $
 /* ######################################################################
 
    Acquire Item - Item to acquire
@@ -120,6 +120,7 @@ class pkgAcqArchive : public pkgAcquire::Item
    
    public:
    
+   virtual void Failed(string Message);
    virtual void Done(string Message,unsigned long Size,string Md5Hash);
    virtual string Describe();
    

+ 4 - 1
apt-pkg/acquire.cc

@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description								/*{{{*/
-// $Id: acquire.cc,v 1.21 1998/12/11 06:01:26 jgg Exp $
+// $Id: acquire.cc,v 1.22 1998/12/11 06:32:35 jgg Exp $
 /* ######################################################################
 
    Acquire - File Acquiration
@@ -566,6 +566,9 @@ pkgAcquire::Queue::QItem *pkgAcquire::Queue::FindItem(string URI,pkgAcquire::Wor
 bool pkgAcquire::Queue::ItemDone(QItem *Itm)
 {
    PipeDepth--;
+   if (Itm->Owner->Status == pkgAcquire::Item::StatFetching)
+      Itm->Owner->Status = pkgAcquire::Item::StatDone;
+   
    if (Itm->Owner->QueueCounter <= 1)
       Owner->Dequeue(Itm->Owner);
    else