]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
why malloc?
authorMichael Jerris <mike@jerris.com>
Wed, 25 Oct 2006 18:00:14 +0000 (18:00 +0000)
committerMichael Jerris <mike@jerris.com>
Wed, 25 Oct 2006 18:00:14 +0000 (18:00 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3204 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/mod/endpoints/mod_sofia/mod_sofia.c

index 453bbb82dd93fed1224a2282567fe4fe0160489a..fd099c73e2e50e71d422325a373198ac1600a1a4 100644 (file)
@@ -3626,7 +3626,7 @@ static void sip_i_info(nua_t *nua,
        if(signal_ptr) {
                struct private_object *tech_pvt = NULL;
                switch_channel_t *channel = NULL;
-               char *dtmf_digit;
+               char dtmf_digit[2] = {0,0};
 
                //Get the channel
                channel = switch_core_session_get_channel(session);
@@ -3640,26 +3640,18 @@ static void sip_i_info(nua_t *nua,
                //Barf if we didn't get it
                assert(tech_pvt != NULL);
 
-               //holder for the dtmf digit
-               dtmf_digit = malloc(sizeof(char) * 2);
-
                //move signal_ptr where we need it (right past Signal=)
                signal_ptr = signal_ptr + 7;
 
                //put the digit somewhere we can muck with
                strncpy(dtmf_digit, signal_ptr, 1);
 
-               //End the string
-               *(dtmf_digit + 1) = '\0';
-
                //queue it up
                switch_channel_queue_dtmf(channel, dtmf_digit);
                
                //print debug info
                switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "INFO DTMF(%s)\n", dtmf_digit);
 
-               //Give back the memory I borrowed
-               free(dtmf_digit);
        } else { //unknown info type
                sip_from_t const *from;