summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--lib/manlock.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/manlock.c b/lib/manlock.c
index 4a3b2be..392c581 100644
--- a/lib/manlock.c
+++ b/lib/manlock.c
@@ -126,6 +126,19 @@ mailbox_open_and_lock (mu_mailbox_t mbox, int flags)
return MU_ERR_FAILURE;
}
+ if (lock)
+ {
+ status = mu_locker_get_flags (lock, &flags);
+ if (status)
+ {
+ mu_diag_funcall (MU_DIAG_ERROR, "mu_locker_get_flags", urlstr,
+ status);
+ return MU_ERR_FAILURE;
+ }
+ if (flags & MU_LOCKER_NULL)
+ lock = NULL;
+ }
+
if (!lock && manlock_mandatory_locking && manlock_lock_dir)
{
char *fname = NULL;

Return to:

Send suggestions and report system problems to the System administrator.