From bbe03283475d4374f51af2e37ca2464f01885f91 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sun, 12 Dec 2004 09:02:18 +0000 Subject: r4162: this should fix the delete/findnext problem from OS/2 clients. Thanks again to kukks for the excellent and detailed bug report (This used to be commit 7dfffe4ac0d6858ae6848708df1baa11a6819680) --- source4/ntvfs/posix/pvfs_dirlist.c | 4 +++- source4/ntvfs/posix/pvfs_search.c | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'source4/ntvfs/posix') diff --git a/source4/ntvfs/posix/pvfs_dirlist.c b/source4/ntvfs/posix/pvfs_dirlist.c index 613de08087..b29c776cba 100644 --- a/source4/ntvfs/posix/pvfs_dirlist.c +++ b/source4/ntvfs/posix/pvfs_dirlist.c @@ -282,5 +282,7 @@ NTSTATUS pvfs_list_seek(struct pvfs_dir *dir, const char *name, uint_t *ofs) pvfs_list_hibernate(dir); - return NT_STATUS_OBJECT_NAME_NOT_FOUND; + /* it is not an error to give a bad name (it may have been deleted). Instead + just continue from end of directory */ + return NT_STATUS_OK; } diff --git a/source4/ntvfs/posix/pvfs_search.c b/source4/ntvfs/posix/pvfs_search.c index 4ee81503c0..1c49701f04 100644 --- a/source4/ntvfs/posix/pvfs_search.c +++ b/source4/ntvfs/posix/pvfs_search.c @@ -562,6 +562,10 @@ NTSTATUS pvfs_search_next(struct ntvfs_module_context *ntvfs, talloc_free(search); } + if (reply_count == 0) { + return NT_STATUS_NO_SUCH_FILE; + } + return NT_STATUS_OK; } -- cgit