[Asterisk-code-review] stasis message.c: Don't create immutable stasis objects with... (asterisk[13])

Richard Mudgett asteriskteam at digium.com
Tue Sep 18 12:40:05 CDT 2018


Richard Mudgett has uploaded this change for review. ( https://gerrit.asterisk.org/10185


Change subject: stasis_message.c: Don't create immutable stasis objects with locks.
......................................................................

stasis_message.c: Don't create immutable stasis objects with locks.

* Create the stasis message object without a lock as it is immutable.
* Create the stasis message type object without a lock as it is immutable.
* Creating the stasis message type could crash if the passed in type name
is NULL and REF_DEBUG is enabled.  Added missing NULL check when passing
the ao2 object tag string.

Change-Id: I28763c58bb9f0b427c11971d0103bf94055e7b32
---
M main/stasis_message.c
1 file changed, 4 insertions(+), 2 deletions(-)



  git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/85/10185/1

diff --git a/main/stasis_message.c b/main/stasis_message.c
index 6274026..cd873f6 100644
--- a/main/stasis_message.c
+++ b/main/stasis_message.c
@@ -63,7 +63,8 @@
 		return STASIS_MESSAGE_TYPE_DECLINED;
 	}
 
-	type = ao2_t_alloc(sizeof(*type), message_type_dtor, name);
+	type = ao2_t_alloc_options(sizeof(*type), message_type_dtor,
+		AO2_ALLOC_OPT_LOCK_NOLOCK, name ?: "");
 	if (!type) {
 		return STASIS_MESSAGE_TYPE_ERROR;
 	}
@@ -123,7 +124,8 @@
 		return NULL;
 	}
 
-	message = ao2_t_alloc(sizeof(*message), stasis_message_dtor, type->name);
+	message = ao2_t_alloc_options(sizeof(*message), stasis_message_dtor,
+		AO2_ALLOC_OPT_LOCK_NOLOCK, type->name);
 	if (message == NULL) {
 		return NULL;
 	}

-- 
To view, visit https://gerrit.asterisk.org/10185
To unsubscribe, or for help writing mail filters, visit https://gerrit.asterisk.org/settings

Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-MessageType: newchange
Gerrit-Change-Id: I28763c58bb9f0b427c11971d0103bf94055e7b32
Gerrit-Change-Number: 10185
Gerrit-PatchSet: 1
Gerrit-Owner: Richard Mudgett <rmudgett at digium.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20180918/1281c375/attachment-0001.html>


More information about the asterisk-code-review mailing list