Merge pull request #462 from dragos-oancea/mod_amqp-nullptrs

[mod_amqp] scan-build: Multiple dereference of null pointer (loaded from variable 'active')
This commit is contained in:
Andrey Volk 2020-03-06 00:52:54 +04:00 committed by GitHub
commit bd3982d607
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 11 additions and 5 deletions

View File

@ -150,20 +150,26 @@ switch_status_t mod_amqp_connection_open(mod_amqp_connection_t *connections, mod
connection_attempt->password);
if (mod_amqp_log_if_amqp_error(status, "Logging in")) {
mod_amqp_connection_close(*active);
*active = NULL;
if (active) {
mod_amqp_connection_close(*active);
*active = NULL;
}
goto err;
}
// Open a channel (1). This is fairly standard
amqp_channel_open(newConnection, 1);
if (mod_amqp_log_if_amqp_error(amqp_get_rpc_reply(newConnection), "Opening channel")) {
mod_amqp_connection_close(*active);
*active = NULL;
if (active) {
mod_amqp_connection_close(*active);
*active = NULL;
}
goto err;
}
(*active)->state = newConnection;
if (active) {
(*active)->state = newConnection;
}
if (oldConnection) {
amqp_destroy_connection(oldConnection);