summaryrefslogtreecommitdiff
path: root/lib/clean-temp.h
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2020-07-04 15:22:33 +0200
committerBruno Haible <bruno@clisp.org>2020-07-04 15:22:33 +0200
commit564370e171d3e503d10463288bee2ff5273b2a33 (patch)
tree2edd07e44bf5fdf34d4cab5140494c4c7f9fe770 /lib/clean-temp.h
parent7ee75d845dbbd2791c99668fef18438652113a00 (diff)
downloadgnulib-564370e171d3e503d10463288bee2ff5273b2a33.tar.gz
clean-temp: Document limitations.
* lib/clean-temp.h: Document limitations.
Diffstat (limited to 'lib/clean-temp.h')
-rw-r--r--lib/clean-temp.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/clean-temp.h b/lib/clean-temp.h
index 087db452d1..df7e7442c0 100644
--- a/lib/clean-temp.h
+++ b/lib/clean-temp.h
@@ -49,7 +49,17 @@ extern "C" {
For the cleanup in the normal case, programs that use this module need to
call 'cleanup_temp_dir' for each successful return of 'create_temp_dir'.
The cleanup in the case of a fatal signal such as SIGINT, SIGTERM, SIGHUP,
- is done entirely automatically by the functions of this module. */
+ is done entirely automatically by the functions of this module.
+
+ Limitations: Files or directories can still be left over if
+ - the program is dies from a fatal signal such as SIGQUIT, SIGKILL, or
+ SIGABRT, SIGSEGV, SIGBUS, SIGILL, SIGFPE, or
+ - in a multithreaded program, the fatal signal handler is already running
+ while another thread of the program creates a new temporary directory
+ or temporary file, or
+ - on native Windows, some temporary files are used by a subprocess while
+ the fatal signal interrupts the program.
+ */
/* ============= Temporary files without temporary directories ============= */