+2007-11-12 Jim Meyering <meyering@redhat.com>
+
+ Don't read from name[-1].
+ * src/incremen.c (make_directory): Handle namelen == 0, since
+ find_directory_meta calls make_directory ("").
+
2007-11-07 Sergey Poznyakoff <gray@gnu.org.ua>
* bootstrap (checkout): Use URL of the gnulib CVS mirror.
TAR_BLOCKING_FACTOR environment variable.
* doc/tar.texi: Update
* NEWS: Update
-
+
2007-10-30 Sergey Poznyakoff <gray@gnu.org.ua>
* doc/Makefile.am: Use texi2html and the CVS version of gendocs.sh
* src/system.c (sys_exec_checkpoint_script): New function.
(sys_exec_info_script): Restore SIGPIPE handler.
* src/tar.c: (parse_opt): New options --hard-dereference,
- --checkpoint-action.
+ --checkpoint-action.
(decode_options): Call checkpoint_finish_compile.
-
+
* src/system.c (sys_exec_info_script): Initialize buf. Problem
reported by Bengt-Arne Fjellner.
directory->orig = NULL;
directory->flags = false;
strcpy (directory->name, name);
- if (ISSLASH (directory->name[namelen-1]))
- directory->name[namelen-1] = 0;
+ if (namelen && ISSLASH (directory->name[namelen - 1]))
+ directory->name[namelen - 1] = 0;
directory->tagfile = NULL;
return directory;
}
{
const char *tag_file_name;
-
+
switch (check_exclusion_tags (name_buffer, &tag_file_name))
{
case exclusion_tag_all:
_("contents not dumped"));
directory->children = NO_CHILDREN;
break;
-
+
case exclusion_tag_under:
exclusion_tag_warning (name_buffer, tag_file_name,
_("contents not dumped"));
directory->tagfile = tag_file_name;
break;
-
+
case exclusion_tag_none:
break;
}
size_t name_length; /* used length in name_buffer */
struct stat stat_data;
struct directory *directory;
-
+
if (! dirp)
savedir_error (dir);
directory = procdir (name_buffer, &stat_data, device, NO_CHILDREN, false,
NULL);
-
+
if (dirp && directory->children != NO_CHILDREN)
{
char *entry; /* directory entry being scanned */
This is an extra safety precaution. Besides, it might be
necessary to extract from archives created with tar versions
prior to 1.19. */
-
+
if (*src)
src = safer_name_suffix (src, false, absolute_names_option);
if (*dst)
dst = safer_name_suffix (dst, false, absolute_names_option);
-
+
if (*src == 0)
src = temp_stub;
else if (*dst == 0)