[Home]

Summary:ASTERISK-19246: possible bug: Audiohook flag values overlap
Reporter:feyfre (feyfre)Labels:
Date Opened:2012-01-26 05:40:07.000-0600Date Closed:2012-02-01 09:58:01.000-0600
Priority:MajorRegression?No
Status:Closed/CompleteComponents:
Versions:1.8.7.2 10.0.1 Frequency of
Occurrence
Constant
Related
Issues:
Environment:Non relevantAttachments:
Description:See enum ast_audiohook_flags in include/asterisk/audiohook.h
{
AST_AUDIOHOOK_TRIGGER_MODE = (3 << 0),
AST_AUDIOHOOK_TRIGGER_READ = (1 << 0),
>>> AST_AUDIOHOOK_TRIGGER_WRITE = (2 << 0),
>>> AST_AUDIOHOOK_WANTS_DTMF = (1 << 1),
AST_AUDIOHOOK_TRIGGER_SYNC = (1 << 2),
AST_AUDIOHOOK_SMALL_QUEUE = (1 << 3),
AST_AUDIOHOOK_MUTE_READ = (1 << 4),
AST_AUDIOHOOK_MUTE_WRITE = (1 << 5),
};
Marked by >>> flag values are equal, so if callback function awaits only write frames it will get DTMF frames too, and vice versa. Is it intended to be? If so, it is not documented anywhere I can find. Or there is branch anywhere in code? In any case overlapping flag values with different meaning is bad idea, isn't?
Comments:By: Sean Bright (seanbright) 2012-02-01 09:41:43.929-0600

This is definitely a bug.  Good catch.  I am working on a patch for this now.

By: Sean Bright (seanbright) 2012-02-01 10:00:43.900-0600

Fixed and committed.  Thanks for your report.