diff options
author | Andrew Tridgell <tridge@samba.org> | 2004-10-18 11:47:13 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:00:00 -0500 |
commit | 384f87bd38c1133c90e2a57775f139532574e3cc (patch) | |
tree | 620191b0984eb721361e33b61301156fd140329c /source4/ntvfs/posix/pvfs_open.c | |
parent | a03a7d0aea2884d4bf0e3fa993acf39189a37ddf (diff) | |
download | samba-384f87bd38c1133c90e2a57775f139532574e3cc.tar.gz samba-384f87bd38c1133c90e2a57775f139532574e3cc.tar.bz2 samba-384f87bd38c1133c90e2a57775f139532574e3cc.zip |
r3034: - fixed a bug in message dispatch, when the dispatch function called messaging_deregister()
- added a pvfs_lock_close_pending() hook to remove pending locks on file close
- fixed the private ptr argument to messaging_deregister() in pvfs_wait
- fixed a bug in continuing lock requests after a lock that is blocking a pending lock is removed
- removed bogus brl_unlock() call in lock continue
- corrected error code for LOCKING_ANDX_CHANGE_LOCKTYPE
- expanded the lock cancel test suite to test lock cancel by unlock and by close
- added a testsuite for LOCKING_ANDX_CHANGE_LOCKTYPE
(This used to be commit 5ef80f034d4aa4dd6810532c63ad041bfc019cb8)
Diffstat (limited to 'source4/ntvfs/posix/pvfs_open.c')
-rw-r--r-- | source4/ntvfs/posix/pvfs_open.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source4/ntvfs/posix/pvfs_open.c b/source4/ntvfs/posix/pvfs_open.c index 05c2bdda28..429f519bca 100644 --- a/source4/ntvfs/posix/pvfs_open.c +++ b/source4/ntvfs/posix/pvfs_open.c @@ -52,6 +52,8 @@ static int pvfs_fd_destructor(void *p) { struct pvfs_file *f = p; + pvfs_lock_close_pending(f->pvfs, f); + brl_close(f->pvfs->brl_context, &f->locking_key, f->fnum); if (f->fd != -1) { @@ -221,6 +223,8 @@ NTSTATUS pvfs_close(struct ntvfs_module_context *ntvfs, return NT_STATUS_INVALID_HANDLE; } + pvfs_lock_close_pending(pvfs, f); + status = brl_close(pvfs->brl_context, &f->locking_key, f->fnum); if (!NT_STATUS_IS_OK(status)) { return status; |