On 1/10/2010 5:33 PM, Jeremy Kister wrote: > With app_swift 1.6.2 + asterisk 1.6.1.12, I've found that if you > enter DTMF during cepstral playback, the first digit of ${SWIFT_DTMF} > is [un]set in an odd way.
The problem lies within f->subclass inside the else if of line 436. the code seems to think the first digit of the DTMF lies within f->subclass, but that's not true; f->subclass is only filled with the last digit when max_digits is reached. does anyone see what's wrong here? 436 } else if (f->frametype == AST_FRAME_DTMF && timeout > 0 && max_digits > 0) { [...] 445 if (max_digits > 1) { 446 rc = listen_for_dtmf(chan, timeout, max_digits - 1); 447 } 448 449 if (rc) { 450 sprintf(results, "%c%d", f->subclass, rc); 451 } else { 452 sprintf(results, "%c", f->subclass); 453 } 454 455 ast_log(LOG_NOTICE, "DTMF = %s\n", results); -- Jeremy Kister http://jeremy.kister.net./ -- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users