Merged revisions 194945 via svnmerge from

https://origsvn.digium.com/svn/asterisk/trunk

........
  r194945 | eliel | 2009-05-16 14:32:11 -0400 (Sat, 16 May 2009) | 8 lines
  
  Fix a missing unlock in case of error, and a missing free().
  
  Always free the allocated memory for a string field, because
  we are always using it (not only when xmldocs are enabled).
  Also if there is an error allocating memory for the string field
  remember to unlock the list of registered applications, before returning.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.2@194946 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.6.2
Eliel C. Sardanons 16 years ago
parent 13b925c81f
commit e7eb9a5519

@ -5055,6 +5055,7 @@ int ast_register_application2(const char *app, int (*execute)(struct ast_channel
}
if (ast_string_field_init(tmp, 128)) {
AST_RWLIST_UNLOCK(&apps);
ast_free(tmp);
return -1;
}
@ -6345,11 +6346,7 @@ int ast_unregister_application(const char *app)
unreference_cached_app(tmp);
AST_RWLIST_REMOVE_CURRENT(list);
ast_verb(2, "Unregistered application '%s'\n", tmp->name);
#ifdef AST_XML_DOCS
if (tmp->docsrc == AST_XML_DOC) {
ast_string_field_free_memory(tmp);
}
#endif
ast_string_field_free_memory(tmp);
ast_free(tmp);
break;
}

Loading…
Cancel
Save