X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fclean-temp.c;h=283d8af236c52fa18e53286f4407b85db97aea25;hb=cb9819cbb9261bd50c3466cf0a4cd873f0d7ebd7;hp=b2dc268bfa294ba1c6c16fa8e0429de51abaf549;hpb=c33ce489206934eb163d8bdab074894925e105bb;p=gnulib.git diff --git a/lib/clean-temp.c b/lib/clean-temp.c index b2dc268bf..283d8af23 100644 --- a/lib/clean-temp.c +++ b/lib/clean-temp.c @@ -2,10 +2,10 @@ Copyright (C) 2001, 2003, 2006-2007 Free Software Foundation, Inc. Written by Bruno Haible , 2006. - This program is free software; you can redistribute it and/or modify + 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 version. + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,8 +13,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + along with this program. If not, see . */ #include @@ -39,9 +38,8 @@ #include "fatal-signal.h" #include "pathmax.h" #include "tmpdir.h" -#include "mkdtemp.h" #include "xalloc.h" -#include "xallocsa.h" +#include "xmalloca.h" #include "gl_linkedhash_list.h" #include "gettext.h" #if GNULIB_FWRITEERROR @@ -321,12 +319,14 @@ create_temp_dir (const char *prefix, const char *parentdir, tmpdir->dirname = NULL; tmpdir->cleanup_verbose = cleanup_verbose; tmpdir->subdirs = gl_list_create_empty (GL_LINKEDHASH_LIST, - string_equals, string_hash, false); + string_equals, string_hash, NULL, + false); tmpdir->files = gl_list_create_empty (GL_LINKEDHASH_LIST, - string_equals, string_hash, false); + string_equals, string_hash, NULL, + false); /* Create the temporary directory. */ - xtemplate = (char *) xallocsa (PATH_MAX); + xtemplate = (char *) xmalloca (PATH_MAX); if (path_search (xtemplate, PATH_MAX, parentdir, prefix, parentdir == NULL)) { error (0, errno, @@ -353,11 +353,11 @@ create_temp_dir (const char *prefix, const char *parentdir, block because then the cleanup handler would not remove the directory if xstrdup fails. */ tmpdir->dirname = xstrdup (tmpdirname); - freesa (xtemplate); + freea (xtemplate); return (struct temp_dir *) tmpdir; quit: - freesa (xtemplate); + freea (xtemplate); return NULL; } @@ -600,7 +600,8 @@ static void register_fd (int fd) { if (descriptors == NULL) - descriptors = gl_list_create_empty (GL_LINKEDHASH_LIST, NULL, NULL, false); + descriptors = gl_list_create_empty (GL_LINKEDHASH_LIST, NULL, NULL, NULL, + false); gl_list_add_first (descriptors, (void *) (uintptr_t) fd); } @@ -663,14 +664,14 @@ fopen_temp (const char *file_name, const char *mode) if (supports_delete_on_close ()) { size_t mode_len = strlen (mode); - char *augmented_mode = (char *) xallocsa (mode_len + 2); + char *augmented_mode = (char *) xmalloca (mode_len + 2); memcpy (augmented_mode, mode, mode_len); memcpy (augmented_mode + mode_len, "D", 2); fp = fopen (file_name, augmented_mode); saved_errno = errno; - freesa (augmented_mode); + freea (augmented_mode); } else #endif