Imported Upstream version 3.3.3
[debian/amanda] / server-src / disk_history.c
index 6c04a6fd7454e633d4c4468658b73c5986b51467..5b5de24a085d9e23ae6652792adb1f20fae97b47 100644 (file)
@@ -1,6 +1,7 @@
 /*
  * Amanda, The Advanced Maryland Automatic Network Disk Archiver
  * Copyright (c) 1991-1998 University of Maryland at College Park
+ * Copyright (c) 2007-2012 Zmanda, Inc.  All Rights Reserved.
  * All Rights Reserved.
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
@@ -76,36 +77,14 @@ add_dump(
 
     /* See if we already have partnum=partnum-1 */
     if (partnum > 1) {
-       int partnum_minus_1 = 0;
        for(item = disk_hist, before = NULL; item;
            before = item, item = item->next) {
            if (!strcmp(item->date, date) &&
                    item->level == level && item->is_split) {
-               tapelist_t *cur_tape;
-               for (cur_tape = item->tapes; cur_tape;
-                                            cur_tape = cur_tape->next) {
-                   int files;
-                   for(files=0; files<cur_tape->numfiles; files++) {
-                       if (cur_tape->partnum[files] == partnum - 1)
-                           partnum_minus_1 = 1;
-                   }
-               }
-               if (partnum_minus_1 == 1) {
-                   item->tapes = append_to_tapelist(item->tapes, tape, file,
-                                                    partnum, isafile);
-                   if (maxpart > item->maxpart)
-                       item->maxpart = maxpart;
-               } else {
-                   /* some part are missing, remove the item from disk_hist */
-                   if (before)
-                       before->next = item->next;
-                   else
-                       disk_hist = item->next;
-                   /* free item */
-                   free_tapelist(item->tapes);
-                   amfree(item->hostname);
-                   amfree(item);
-               }
+               item->tapes = append_to_tapelist(item->tapes, tape, file,
+                                                partnum, isafile);
+               if (maxpart > item->maxpart)
+                   item->maxpart = maxpart;
                return;
            }
        }