Only deref a reserved gateway session if we actually reserved one

Its perfectly acceptable to have a gateway session unreserved when we go to
first allocate one.  Unreffing the reserved gateway session - when its NULL -
will result in an assertion error.

This problem was caught by the Asterisk Test Suite (once we had enough of the
debugging flags enabled)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@375797 65c4cc65-6c06-0410-ace0-fbb531ad65f3
10
Matthew Jordan 13 years ago
parent 64f4ef4eb7
commit 2cef16f5c3

@ -2549,7 +2549,9 @@ static int fax_gateway_start(struct fax_gateway *gateway, struct ast_fax_session
}
/* release the reference for the reserved session and replace it with
* the real session */
ao2_ref(gateway->s, -1);
if (gateway->s) {
ao2_ref(gateway->s, -1);
}
gateway->s = s;
gateway->token = NULL;

Loading…
Cancel
Save