Skip to content

Commit 908c55d

Browse files
committed
Move loopbreak call to before we free the closure contents.
We can't use the contents of the closure after we've freed them.
1 parent 817ea34 commit 908c55d

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

plugins/sudoers/log_client.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1883,13 +1883,13 @@ server_msg_cb(int fd, int what, void *v)
18831883
buf->off = 0;
18841884
debug_return;
18851885
bad:
1886-
/* Disable further log server operations. */
1887-
client_closure_free_contents(closure);
1888-
closure->disabled = true;
18891886
if (!closure->log_details->ignore_log_errors) {
18901887
/* Break out of sudo event loop and kill the command. */
18911888
closure->read_ev->loopbreak(closure->read_ev);
18921889
}
1890+
/* Disable further log server operations. */
1891+
client_closure_free_contents(closure);
1892+
closure->disabled = true;
18931893
debug_return;
18941894
}
18951895

@@ -2003,13 +2003,13 @@ client_msg_cb(int fd, int what, void *v)
20032003
debug_return;
20042004

20052005
bad:
2006-
/* Disable further log server operations. */
2007-
client_closure_free_contents(closure);
2008-
closure->disabled = true;
20092006
if (!closure->log_details->ignore_log_errors) {
20102007
/* Break out of sudo event loop and kill the command. */
20112008
closure->read_ev->loopbreak(closure->read_ev);
20122009
}
2010+
/* Disable further log server operations. */
2011+
client_closure_free_contents(closure);
2012+
closure->disabled = true;
20132013
debug_return;
20142014
}
20152015

0 commit comments

Comments
 (0)