[asterisk-commits] irroot: branch irroot/distrotech-customers-10 r336155 - /team/irroot/distrote...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Sep 15 14:01:38 CDT 2011
Author: irroot
Date: Thu Sep 15 14:01:32 2011
New Revision: 336155
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=336155
Log:
Merged revisions 336042,336091,336094 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10
................
r336042 | oej | 2011-09-15 14:46:38 +0200 (Thu, 15 Sep 2011) | 12 lines
Meetme: Introducing a new option "k" to kill a conference if there's only a single member left.
When using Meetme as a modular call bridge from third party applications, it's handy to make
it behave like a normal call bridge. When the second to last person exists, the last person
will be kicked out of the conference when this option is enabled.
(closes issue ASTERISK-18234)
Review: https://reviewboard.asterisk.org/r/1376/
Patch by oej, sponsored by ClearIT, Solna, Sweden
................
r336091 | dvossel | 2011-09-15 17:19:10 +0200 (Thu, 15 Sep 2011) | 2 lines
Removes some no-op code found in format_cap.c.
................
r336094 | irroot | 2011-09-15 17:54:46 +0200 (Thu, 15 Sep 2011) | 26 lines
Merged revisions 336093 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r336093 | irroot | 2011-09-15 17:46:21 +0200 (Thu, 15 Sep 2011) | 20 lines
Locking order in app_queue.c causes deadlocks.
a channel lock must never be held with the queues container lock held.
the deadlock occured on masquerade.
the queues container lock is a relic of the past the old queue module lock.
with ao2 there is no need to hold this lock when dealing with members this
patch removes unneeded locks.
(closes issue ASTERISK-18101)
(closes issue ASTERISK-18487)
Reported by: Paul Rolfe, Jason Legault
Tested by: irroot, Jason Legault, Paul Rolfe
Reviewed by: Matthew Nicholson
Review: https://reviewboard.asterisk.org/r/1402/
........
................
Modified:
team/irroot/distrotech-customers-10/res/res_fax.c
Modified: team/irroot/distrotech-customers-10/res/res_fax.c
URL: http://svnview.digium.com/svn/asterisk/team/irroot/distrotech-customers-10/res/res_fax.c?view=diff&rev=336155&r1=336154&r2=336155
==============================================================================
--- team/irroot/distrotech-customers-10/res/res_fax.c (original)
+++ team/irroot/distrotech-customers-10/res/res_fax.c Thu Sep 15 14:01:32 2011
@@ -3102,7 +3102,7 @@
int res = 0;
int dspnoise = 0;
struct ast_dsp *dsp = NULL;
- struct ast_frame *f;
+ struct ast_frame *f, *dup_f;
enum ast_t38_state t38state = T38_STATE_UNKNOWN;
struct ast_format orig_read_format;
AST_LIST_HEAD_NOLOCK(, ast_frame) deferred_frames;
@@ -3120,13 +3120,13 @@
}
}
- if ((dsp = ast_dsp_new())) {
- ast_dsp_set_features(dsp, DSP_FEATURE_FAX_DETECT);
- ast_dsp_set_faxmode(dsp, DSP_FAXMODE_DETECT_CNG | DSP_FAXMODE_DETECT_SQUELCH);
- ast_dsp_set_threshold(dsp, ast_dsp_get_threshold_from_settings(THRESHOLD_SILENCE));
- } else {
+ if (!(dsp = ast_dsp_new())) {
return -1;
}
+
+ ast_dsp_set_features(dsp, DSP_FEATURE_FAX_DETECT);
+ ast_dsp_set_faxmode(dsp, DSP_FAXMODE_DETECT_CNG | DSP_FAXMODE_DETECT_SQUELCH);
+ ast_dsp_set_threshold(dsp, ast_dsp_get_threshold_from_settings(THRESHOLD_SILENCE));
AST_LIST_HEAD_INIT_NOLOCK(&deferred_frames);
@@ -3169,7 +3169,11 @@
ast_channel_lock(chan);
while ((f = AST_LIST_REMOVE_HEAD(&deferred_frames, frame_list))) {
- ast_queue_frame_head(chan, ast_frisolate(f));
+ dup_f = ast_frisolate(f);
+ ast_queue_frame_head(chan, dup_f;
+ if (dup_f != f) {
+ ast_frfree(f);
+ }
}
ast_channel_unlock(chan);
More information about the asterisk-commits
mailing list