/* Update a tar archive.
Copyright (C) 1988, 1992, 1994, 1996, 1997, 1999, 2000, 2001, 2003,
- 2004, 2005 Free Software Foundation, Inc.
+ 2004, 2005, 2007 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
- Free Software Foundation; either version 2, or (at your option) any later
+ Free Software Foundation; either version 3, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but
name_gather ();
open_archive (ACCESS_UPDATE);
- xheader_write_global ();
+ buffer_write_global_xheader ();
while (!found_end)
{
archive_format = current_format;
if (subcommand_option == UPDATE_SUBCOMMAND
- && (name = name_scan (current_stat_info.file_name, false)) != NULL)
+ && (name = name_scan (current_stat_info.file_name)) != NULL)
{
struct stat s;
}
tar_stat_destroy (¤t_stat_info);
- xheader_destroy (&extended_header);
previous_status = status;
}
output_start = current_block->buffer;
{
- char *file_name;
-
- while ((file_name = name_from_list ()) != NULL)
+ struct name const *p;
+ while ((p = name_from_list ()) != NULL)
{
+ char *file_name = p->name;
if (excluded_name (file_name))
continue;
if (interactive_option && !confirm ("add", file_name))