summaryrefslogtreecommitdiffstats
path: root/source/smbd/trans2.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>1998-11-18 18:59:39 +0000
committerJeremy Allison <jra@samba.org>1998-11-18 18:59:39 +0000
commit6946b40d9f5d574450eebf0a90441349e2a35cd8 (patch)
treed9c0614e6dfcc2b16bf0a10304a8b25af62cf691 /source/smbd/trans2.c
parent7ec6b81ccdd8c2401484839723885d6b52762e66 (diff)
downloadsamba-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.c9
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() */