about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Doc/Zsh/mod_system.yo7
2 files changed, 10 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index e5941f6a7..b64949d55 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2019-03-22  dana  <dana@dana.is>
+
+	* Clinton Bunch: 44156 (tweaked): Doc/Zsh/mod_system.yo: Add
+	note about potential flock side-effects
+
 2019-03-22  Jun-ichi Takimoto  <takimoto-j@kba.biglobe.ne.jp>
 
 	* 44147: Completion/Linux/Command/_free,
diff --git a/Doc/Zsh/mod_system.yo b/Doc/Zsh/mod_system.yo
index a27bab47f..3a85e760f 100644
--- a/Doc/Zsh/mod_system.yo
+++ b/Doc/Zsh/mod_system.yo
@@ -177,8 +177,11 @@ locked by opening a file descriptor to the file and applying a lock to
 the file descriptor.  The lock terminates when the shell process that
 created the lock exits; it is therefore often convenient to create file
 locks within subshells, since the lock is automatically released when
-the subshell exits.  Status 0 is returned if the lock succeeds, else
-status 1.
+the subshell exits.  Note that use of the tt(print) builtin with the
+tt(-u) option will, as a side effect, release the lock, as will redirection
+to the file in the shell holding the lock.  To work around this use a
+subshell, e.g. `tt((print message) >> )var(file)'.  Status 0 is
+returned if the lock succeeds, else status 1.
 
 In the second form the file descriptor given by the arithmetic
 expression var(fd_expr) is closed, releasing a lock.  The file descriptor