]> Dogcows Code - chaz/tar/blobdiff - src/update.c
tar: add utimens.h includes
[chaz/tar] / src / update.c
index 0f5dadf71e49b5616b985981ccb79b88fd0c40bb..53ce553b0ca680944ae0a33b6d08126369c1752e 100644 (file)
@@ -1,7 +1,7 @@
 /* Update a tar archive.
 
    Copyright (C) 1988, 1992, 1994, 1996, 1997, 1999, 2000, 2001, 2003,
-   2004, 2005, 2007 Free Software Foundation, Inc.
+   2004, 2005, 2007, 2010 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published by the
@@ -114,7 +114,9 @@ update_archive (void)
 
   while (!found_end)
     {
-      enum read_header status = read_header (false);
+      enum read_header status = read_header (&current_header,
+                                             &current_stat_info,
+                                             read_header_auto);
 
       switch (status)
        {
@@ -148,14 +150,14 @@ update_archive (void)
                        else
                          {
                            namebuf_t nbuf = namebuf_create (name->name);
-                           
+
                            for (p = dirp; *p; p += strlen (p) + 1)
                              addname (namebuf_name (nbuf, p),
                                       0, false, NULL);
-                           
+
                            namebuf_free (nbuf);
                            free (dirp);
-                           
+
                            remname (name);
                          }
                      }
@@ -165,7 +167,7 @@ update_archive (void)
                      remname (name);
                  }
              }
-           
+
            skip_member ();
            break;
          }
@@ -222,11 +224,12 @@ update_archive (void)
        if (subcommand_option == CAT_SUBCOMMAND)
          append_file (file_name);
        else
-         dump_file (file_name, 1, (dev_t) 0);
+         dump_file (0, file_name, file_name);
       }
   }
 
   write_eot ();
   close_archive ();
+  finish_deferred_unlinks ();
   names_notfound ();
 }
This page took 0.02187 seconds and 4 git commands to generate.