]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
let hangup app optionally take a digit string for exact cause
authorAnthony Minessale <anthony.minessale@gmail.com>
Tue, 3 Jul 2007 21:05:41 +0000 (21:05 +0000)
committerAnthony Minessale <anthony.minessale@gmail.com>
Tue, 3 Jul 2007 21:05:41 +0000 (21:05 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5497 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/switch_channel.c

index b87bee64eaf752ad95d4b63814df05639c267fe2..07b32946b978c56a3991823a1800e1842cbe5dde 100644 (file)
@@ -139,9 +139,13 @@ SWITCH_DECLARE(switch_call_cause_t) switch_channel_str2cause(const char *str)
        uint8_t x;
        switch_call_cause_t cause = SWITCH_CAUSE_UNALLOCATED;
 
-       for (x = 0; CAUSE_CHART[x].name; x++) {
-               if (!strcasecmp(CAUSE_CHART[x].name, str)) {
-                       cause = CAUSE_CHART[x].cause;
+       if (*str > 47 && *str < 58) {
+               cause = atoi(str);
+       } else {
+               for (x = 0; CAUSE_CHART[x].name; x++) {
+                       if (!strcasecmp(CAUSE_CHART[x].name, str)) {
+                               cause = CAUSE_CHART[x].cause;
+                       }
                }
        }
        return cause;