diff options
author | Jeremy Allison <jra@samba.org> | 1998-11-18 18:59:39 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 1998-11-18 18:59:39 +0000 |
commit | 6946b40d9f5d574450eebf0a90441349e2a35cd8 (patch) | |
tree | d9c0614e6dfcc2b16bf0a10304a8b25af62cf691 /source/smbd/trans2.c | |
parent | 7ec6b81ccdd8c2401484839723885d6b52762e66 (diff) | |
download | samba-6946b40d9f5d574450eebf0a90441349e2a35cd8.tar.gz samba-6946b40d9f5d574450eebf0a90441349e2a35cd8.tar.xz samba-6946b40d9f5d574450eebf0a90441349e2a35cd8.zip |
Fixed crash bug found by russian codepage problem.... although how the
two are related I'm not sure :-). Problem was assuming that fd_ptr in
the files_struct was always non-null (which is not the case when directories
are open).
Jeremy.
Diffstat (limited to 'source/smbd/trans2.c')
-rw-r--r-- | source/smbd/trans2.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/source/smbd/trans2.c b/source/smbd/trans2.c index 4eda143994e..d71c23c87b7 100644 --- a/source/smbd/trans2.c +++ b/source/smbd/trans2.c @@ -1755,7 +1755,7 @@ file %s as a share exists that was not opened with FILE_DELETE access.\n", (iterate_fsp->share_mode | DELETE_ON_CLOSE_FLAG) : (iterate_fsp->share_mode & ~DELETE_ON_CLOSE_FLAG) ); - DEBUG(10,("call_trans2setfilepathinfo: Changing share mode for fnum %d, file %s\ + DEBUG(10,("call_trans2setfilepathinfo: Changing share mode for fnum %d, file %s \ dev = %x, inode = %.0f from %x to %x\n", iterate_fsp->fnum, iterate_fsp->fsp_name, (unsigned int)dev, (double)inode, iterate_fsp->share_mode, new_share_mode )); @@ -1770,9 +1770,12 @@ dev = %x, inode = %.0f\n", iterate_fsp->fnum, (unsigned int)dev, (double)inode)) * counted struct. Delete when the last reference * goes away. */ - fsp->fd_ptr->delete_on_close = delete_on_close; + fsp->fd_ptr->delete_on_close = delete_on_close; - unlock_share_entry(fsp->conn, dev, inode, token); + unlock_share_entry(fsp->conn, dev, inode, token); + + DEBUG(10, ("call_trans2setfilepathinfo: %s delete on close flag for fnum = %d, file %s\n", + delete_on_close ? "Added" : "Removed", fsp->fnum, fsp->fsp_name )); } /* end if(delete_on_close && !GET_DELETE_ON_CLOSE_FLAG(fsp->share_mode)) */ } /* end if lp_share_modes() */ |