media_index: Improve startup.
authorCorey Farrell <git@cfware.com>
Wed, 6 Dec 2017 18:42:55 +0000 (13:42 -0500)
committerCorey Farrell <git@cfware.com>
Wed, 6 Dec 2017 19:34:32 +0000 (14:34 -0500)
commit2af59ebb3ad82ee0b616a94f947bfaa53a1b26f7
treeff0ef0875d48e68ae81089341d66f1436c846992
parent3fc1490bcb3611d2830a9ba37e36a8fa258f60b6
media_index: Improve startup.

This eliminates some wasteful operations in media_index startup.

* Replace statically set string-fields with char[0].
* Eliminate pointless RAII_VAR's.
* alloc_variant: Avoid pointless ao2_find on new info->variant.
* Stop trying find_variant before alloc_variant.
* process_media_file: replace ast_str with ast_asprintf.  This avoids
  reallocation of file_id_str.

Overall sounds_index.c is about 27% of Asterisk startup time when using
sample configs.  This patch reduces it to 20%.  This is a half-fix.  The
real problem is that the media_index is regenerated repeatedly - 68
times in my test.

Change-Id: Ia50b752f8efb356f852b05c4be495a6631af8652
main/media_index.c