]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Merged revisions 245624 via svnmerge from
authorRussell Bryant <russell@russellbryant.com>
Mon, 8 Feb 2010 23:45:10 +0000 (23:45 +0000)
committerRussell Bryant <russell@russellbryant.com>
Mon, 8 Feb 2010 23:45:10 +0000 (23:45 +0000)
https://origsvn.digium.com/svn/asterisk/trunk

........
  r245624 | russell | 2010-02-08 17:43:00 -0600 (Mon, 08 Feb 2010) | 5 lines

  Fix return value of get_ie_str() and get_ie_str_hash() for non-existent IE.

  I found this bug while developing a unit test for event allocation.  Testing
  is awesome.
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@245625 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/event.c

index 445fd40c674994a3d4815675c6eb6b99101bcb2e..dd3cff1f7755e25894ad27dee778b2bc446c2cf8 100644 (file)
@@ -796,7 +796,7 @@ const char *ast_event_iterator_get_ie_str(struct ast_event_iterator *iterator)
 
        str_payload = (struct ast_event_ie_str_payload *) iterator->ie->ie_payload;
 
-       return str_payload->str;
+       return str_payload ? str_payload->str : NULL;
 }
 
 void *ast_event_iterator_get_ie_raw(struct ast_event_iterator *iterator)
@@ -824,7 +824,7 @@ uint32_t ast_event_get_ie_str_hash(const struct ast_event *event, enum ast_event
 
        str_payload = ast_event_get_ie_raw(event, ie_type);
 
-       return str_payload->hash;
+       return str_payload ? str_payload->hash : 0;
 }
 
 const char *ast_event_get_ie_str(const struct ast_event *event, enum ast_event_ie_type ie_type)
@@ -833,7 +833,7 @@ const char *ast_event_get_ie_str(const struct ast_event *event, enum ast_event_i
 
        str_payload = ast_event_get_ie_raw(event, ie_type);
 
-       return str_payload->str;
+       return str_payload ? str_payload->str : NULL;
 }
 
 const void *ast_event_get_ie_raw(const struct ast_event *event, enum ast_event_ie_type ie_type)