]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
How did the use after free not blowup in the last 3 years since it was modified?
authorWilliam King <william.king@quentustech.com>
Sun, 15 Sep 2013 23:19:19 +0000 (16:19 -0700)
committerWilliam King <william.king@quentustech.com>
Sun, 15 Sep 2013 23:19:19 +0000 (16:19 -0700)
src/mod/applications/mod_fifo/mod_fifo.c

index 7c236ef6d21651b7d11e4e80754c14c2e5d40a7f..1affefa3e4d56cd607d5e2b9a0e1f68767d893b8 100644 (file)
@@ -1637,7 +1637,6 @@ static void *SWITCH_THREAD_FUNC o_thread_run(switch_thread_t *thread, void *obj)
        fifo_execute_sql_queued(&sql, SWITCH_TRUE, SWITCH_TRUE);
 
        status = switch_ivr_originate(NULL, &session, &cause, originate_string, h->timeout, NULL, NULL, NULL, NULL, ovars, SOF_NONE, NULL);
-       free(originate_string);
 
        if (status != SWITCH_STATUS_SUCCESS) {
 
@@ -1694,6 +1693,10 @@ static void *SWITCH_THREAD_FUNC o_thread_run(switch_thread_t *thread, void *obj)
 
   end:
 
+       if ( originate_string ){
+               switch_safe_free(originate_string);
+       }
+
        switch_event_destroy(&ovars);
        if (node) {
                switch_mutex_lock(node->update_mutex);