diff options
Diffstat (limited to 'main/callerid.c')
-rw-r--r-- | main/callerid.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/main/callerid.c b/main/callerid.c index d9f74180a..db5e795ff 100644 --- a/main/callerid.c +++ b/main/callerid.c @@ -1237,12 +1237,17 @@ const char *ast_redirecting_reason_describe(int data) return "not-known"; } -const char *ast_redirecting_reason_name(int data) +const char *ast_redirecting_reason_name(const struct ast_party_redirecting_reason *data) { int index; + if (!ast_strlen_zero(data->str)) { + /* Use this string if it has been set. Otherwise, use the table. */ + return data->str; + } + for (index = 0; index < ARRAY_LEN(redirecting_reason_types); ++index) { - if (redirecting_reason_types[index].value == data) { + if (redirecting_reason_types[index].value == data->code) { return redirecting_reason_types[index].name; } } |