bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

clean-temp: Improve comments


From: Bruno Haible
Subject: clean-temp: Improve comments
Date: Sat, 04 Jul 2020 14:57:06 +0200
User-agent: KMail/5.1.3 (Linux/4.4.0-179-generic; KDE/5.18.0; x86_64; ; )

It was not clear from the comments how open_temp and clean_temp are meant
to be used.


2020-07-04  Bruno Haible  <bruno@clisp.org>

        clean-temp: Improve comments.
        * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
        fwriteerror_temp, close_stream_temp): Clarify intended use.
        * lib/clean-temp.c: Likewise.

diff --git a/lib/clean-temp.c b/lib/clean-temp.c
index 5a311de..75bd1ee 100644
--- a/lib/clean-temp.c
+++ b/lib/clean-temp.c
@@ -763,7 +763,10 @@ register_fd (int fd)
 }
 
 /* Open a temporary file in a temporary directory.
-   Registers the resulting file descriptor to be closed.  */
+   FILE_NAME must already have been passed to register_temp_file.
+   Registers the resulting file descriptor to be closed.
+   DELETE_ON_CLOSE indicates whether the file can be deleted when the resulting
+   file descriptor or stream is closed.  */
 int
 open_temp (const char *file_name, int flags, mode_t mode, bool delete_on_close)
 {
@@ -789,7 +792,10 @@ open_temp (const char *file_name, int flags, mode_t mode, 
bool delete_on_close)
 }
 
 /* Open a temporary file in a temporary directory.
-   Registers the resulting file descriptor to be closed.  */
+   FILE_NAME must already have been passed to register_temp_file.
+   Registers the resulting file descriptor to be closed.
+   DELETE_ON_CLOSE indicates whether the file can be deleted when the resulting
+   file descriptor or stream is closed.  */
 FILE *
 fopen_temp (const char *file_name, const char *mode, bool delete_on_close)
 {
@@ -835,6 +841,7 @@ fopen_temp (const char *file_name, const char *mode, bool 
delete_on_close)
 }
 
 /* Close a temporary file in a temporary directory.
+   FD must have been returned by open_temp.
    Unregisters the previously registered file descriptor.  */
 int
 close_temp (int fd)
@@ -962,6 +969,8 @@ fclose_variant_temp (FILE *fp, int (*fclose_variant) (FILE 
*))
 }
 
 /* Close a temporary file in a temporary directory.
+   FP must have been returned by fopen_temp, or by fdopen on a file descriptor
+   returned by open_temp.
    Unregisters the previously registered file descriptor.  */
 int
 fclose_temp (FILE *fp)
@@ -971,6 +980,8 @@ fclose_temp (FILE *fp)
 
 #if GNULIB_FWRITEERROR
 /* Like fwriteerror.
+   FP must have been returned by fopen_temp, or by fdopen on a file descriptor
+   returned by open_temp.
    Unregisters the previously registered file descriptor.  */
 int
 fwriteerror_temp (FILE *fp)
@@ -981,6 +992,8 @@ fwriteerror_temp (FILE *fp)
 
 #if GNULIB_CLOSE_STREAM
 /* Like close_stream.
+   FP must have been returned by fopen_temp, or by fdopen on a file descriptor
+   returned by open_temp.
    Unregisters the previously registered file descriptor.  */
 int
 close_stream_temp (FILE *fp)
diff --git a/lib/clean-temp.h b/lib/clean-temp.h
index 5b66328..7848a15 100644
--- a/lib/clean-temp.h
+++ b/lib/clean-temp.h
@@ -117,6 +117,7 @@ extern int cleanup_temp_dir_contents (struct temp_dir *dir);
 extern int cleanup_temp_dir (struct temp_dir *dir);
 
 /* Open a temporary file in a temporary directory.
+   FILE_NAME must already have been passed to register_temp_file.
    Registers the resulting file descriptor to be closed.
    DELETE_ON_CLOSE indicates whether the file can be deleted when the resulting
    file descriptor or stream is closed.  */
@@ -126,15 +127,25 @@ extern FILE * fopen_temp (const char *file_name, const 
char *mode,
                           bool delete_on_close);
 
 /* Close a temporary file in a temporary directory.
+   FD must have been returned by open_temp.
    Unregisters the previously registered file descriptor.  */
 extern int close_temp (int fd);
+
+/* Close a temporary file in a temporary directory.
+   FP must have been returned by fopen_temp, or by fdopen on a file descriptor
+   returned by open_temp.
+   Unregisters the previously registered file descriptor.  */
 extern int fclose_temp (FILE *fp);
 
 /* Like fwriteerror.
+   FP must have been returned by fopen_temp, or by fdopen on a file descriptor
+   returned by open_temp.
    Unregisters the previously registered file descriptor.  */
 extern int fwriteerror_temp (FILE *fp);
 
 /* Like close_stream.
+   FP must have been returned by fopen_temp, or by fdopen on a file descriptor
+   returned by open_temp.
    Unregisters the previously registered file descriptor.  */
 extern int close_stream_temp (FILE *fp);
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]