diff options
| author | Volker Lendecke <vl@samba.org> | 2014-06-20 14:15:19 +0000 |
|---|---|---|
| committer | Volker Lendecke <vl@samba.org> | 2014-06-21 20:38:11 +0200 |
| commit | 0c2e763aaa05f63bb8563e62f9731e35afa9ed86 (patch) | |
| tree | 99dda3ff8725928571725614d24bfc5b9afa80ee /source3 | |
| parent | 0ead434b84a7c3226ac223acc79ad0e794da3877 (diff) | |
| download | samba-0c2e763aaa05f63bb8563e62f9731e35afa9ed86.tar.gz samba-0c2e763aaa05f63bb8563e62f9731e35afa9ed86.tar.xz samba-0c2e763aaa05f63bb8563e62f9731e35afa9ed86.zip | |
smbd: First watch, then defer
We exit if any of these if-statement fails, so a simple swap should not
make a difference.
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3')
| -rw-r--r-- | source3/smbd/open.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c index c0f4dea3ac..9cbc046760 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -1580,11 +1580,6 @@ static void defer_open(struct share_mode_lock *lck, *open_rec = *state; - if (!push_deferred_open_message_smb(req, request_time, timeout, - state->id, open_rec)) { - TALLOC_FREE(lck); - exit_server("push_deferred_open_message_smb failed"); - } if (lck) { struct defer_open_state *watch_state; struct tevent_req *watch_req; @@ -1614,6 +1609,12 @@ static void defer_open(struct share_mode_lock *lck, timeval_sum(&request_time, &timeout)); SMB_ASSERT(ret); } + + if (!push_deferred_open_message_smb(req, request_time, timeout, + state->id, open_rec)) { + TALLOC_FREE(lck); + exit_server("push_deferred_open_message_smb failed"); + } } static void defer_open_done(struct tevent_req *req) |
