asterisk/main
Matthew Jordan 2be984fb11 main/bridge_basic: Fix features regressions introduced by r428165
In r428165, two bugs were introduced:

* Prior to entering the features retry loop, the buffer that holds the
  collected digits is wiped. However, this inadvertently wipes out the
  first collected digit on the first pass through, which is obtained
  in ast_stream_and_wait. This caused all of the features tests to fail.
* If ast_app_dtget returns a hangup (-1), the loop would retry incorrectly.
  If we detect a hangup, we have to stop trying the feature.

This patch fixes both issues.

Review: https://reviewboard.asterisk.org/r/4196/
........

Merged revisions 428505 from http://svn.asterisk.org/svn/asterisk/branches/13


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@428506 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-11-21 02:17:15 +00:00
..
editline cli.c: Fix tab completion "module load" when MALLOC_DEBUG is enabled. 2014-09-22 17:42:26 +00:00
stdtime Allow Asterisk to compile under GCC 4.10 2014-05-09 22:49:26 +00:00
Makefile main/Makefile: fix compilation error of buildinfo occurring on 'make install' 2014-07-04 15:26:58 +00:00
abstract_jb.c func_jitterbuffer: fix frame leaks. 2014-11-02 07:40:57 +00:00
acl.c Fix error with mixed address family ACLs. 2014-11-20 16:37:58 +00:00
adsi.c Allow Asterisk to compile under GCC 4.10 2014-05-09 22:49:26 +00:00
alaw.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
aoc.c stasis: Reduce creation of channel snapshots to improve performance 2014-06-13 18:24:49 +00:00
app.c Fix crash caused by merge error on review 4138 2014-11-04 14:11:54 +00:00
ast_expr2.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
ast_expr2.fl Avoid cppcheck warnings; removing unused vars and a bit of cleanup. 2012-04-17 18:57:40 +00:00
ast_expr2.h Allow the REALTIME() function to report errors back to the caller. 2012-07-11 17:16:50 +00:00
ast_expr2.y core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
ast_expr2f.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
asterisk.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
asterisk.dynamics Fix error loading res_monitor. 2014-04-23 15:02:39 +00:00
asterisk.exports.in Add _IO_stdin_used in version-script to fix SIGBUSes on Sparc. 2013-08-22 08:26:55 +00:00
astfd.c Unregister CLI commands on exit 2013-08-20 15:36:10 +00:00
astmm.c MALLOC_DEBUG: Change fence magic number to be completely different from the freed magic number. 2013-09-09 23:29:44 +00:00
astobj2.c astobj2.c/refcounter.py: Fix to deal with invalid object refs. 2014-09-18 16:56:40 +00:00
astobj2_container.c ao2_container node object ignores REF_DEBUG in all places except one 2014-06-25 18:57:04 +00:00
astobj2_container_private.h astobj2: Additional refactoring to push impl specific code down into the impls. 2014-06-20 15:27:43 +00:00
astobj2_hash.c astobj2: Additional refactoring to push impl specific code down into the impls. 2014-06-20 15:27:43 +00:00
astobj2_private.h astobj2: Additional refactoring to push impl specific code down into the impls. 2014-06-20 15:27:43 +00:00
astobj2_rbtree.c astobj2: Additional refactoring to push impl specific code down into the impls. 2014-06-20 15:27:43 +00:00
audiohook.c audiohooks: Clean references to formats 2014-10-30 23:45:25 +00:00
autochan.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
autoservice.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
backtrace.c Fix memory corruption when trying to get "core show locks". 2013-08-23 18:07:40 +00:00
bridge.c Fix race condition that could result in ARI transfer messages not being sent. 2014-11-14 15:28:42 +00:00
bridge_after.c Bridges: Fix feature interruption/unintended kick caused by external actions 2014-08-13 16:24:37 +00:00
bridge_basic.c main/bridge_basic: Fix features regressions introduced by r428165 2014-11-21 02:17:15 +00:00
bridge_channel.c Bridge DTMF hooks: Made audio pass from the bridge while waiting for more matching digits. 2014-11-06 19:12:18 +00:00
bridge_roles.c ARI: bridges/{bridgeID}/addChannel: add roles parameter 2013-08-05 16:59:13 +00:00
bucket.c Allow Asterisk to compile under GCC 4.10 2014-05-09 22:49:26 +00:00
buildinfo.c fix a few small things found by using sparse 2008-10-30 16:49:02 +00:00
callerid.c CallerID: Fix parsing regression 2014-10-10 13:03:18 +00:00
ccss.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
cdr.c Documentation: Revise explanation of cdr.conf option 'Unanswered' 2014-11-14 18:12:05 +00:00
cel.c Fix race condition that could result in ARI transfer messages not being sent. 2014-11-14 15:28:42 +00:00
channel.c AMI: Add missing VarSet events when a channel inherits variables. 2014-10-17 02:49:57 +00:00
channel_internal_api.c channel_internal_api.c: Replace some code with ao2_replace(). 2014-08-14 16:01:39 +00:00
chanvars.c res_phoneprov: Refactor phoneprov to allow pluggable config providers 2014-10-09 17:46:23 +00:00
cli.c Call IDs: Fix appearance of call ID in core show channels when NULL 2014-09-05 19:39:04 +00:00
codec.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
codec_builtin.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
config.c config: Make text_file_save and 'dialplan save' escape semicolons in values. 2014-11-05 00:17:10 +00:00
config_options.c AMI: Allow for command response documentation 2014-07-24 13:00:59 +00:00
core_local.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
core_unreal.c AMI: Add missing VarSet events when a channel inherits variables. 2014-10-17 02:49:57 +00:00
crypt.c Fix utils directory breakage. 2013-07-04 13:06:15 +00:00
cygload.c Kill off red blobs in most of main/* 2012-03-22 19:51:16 +00:00
data.c data: Properly access formats in capabilities structure when adding codecs. 2014-10-07 18:34:40 +00:00
datastore.c This is no longer needed. 2013-06-29 00:18:57 +00:00
db.c core/db: Revert Patch Added In Attempt To Improve I/O Performance 2014-07-24 21:01:37 +00:00
devicestate.c devicestate.c: Minor tweaks 2014-09-05 17:45:03 +00:00
dial.c Dial API: Add a dial option to indicate the dialed channel will replace dialer 2014-09-05 20:22:12 +00:00
dns.c Clean up files that do not end with newlines 2014-08-21 14:52:28 +00:00
dnsmgr.c Migrate a large number of AMI events over to Stasis-Core 2013-05-24 20:44:07 +00:00
dsp.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
ecdisa.h Kill off red blobs in most of main/* 2012-03-22 19:51:16 +00:00
endpoints.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
enum.c Allow Asterisk to compile under GCC 4.10 2014-05-09 22:49:26 +00:00
event.c event.c: Fix type mismatch errors in ie_maps[]. 2014-06-27 23:21:44 +00:00
features.c Fix leak in AMI Action Bridge 2014-11-12 20:40:59 +00:00
features_config.c Allow for transferer to retry when dialing an invalid extension. 2014-11-17 16:58:52 +00:00
file.c main/file.c: fix possible extra ast_module_unref to format modules. 2014-11-06 12:15:54 +00:00
fixedjitterbuf.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
fixedjitterbuf.h Kill off red blobs in most of main/* 2012-03-22 19:51:16 +00:00
format.c chan_iax2: Fix a crash that occurs when using allow=all for an IAX2 peer 2014-08-05 13:59:53 +00:00
format_cache.c Clean up files that do not end with newlines 2014-08-21 14:52:28 +00:00
format_cap.c Add API call to determine if format capability structure is "empty". 2014-09-18 16:38:26 +00:00
format_compatibility.c chan_iax2: Several media format fixes. 2014-08-07 18:51:16 +00:00
frame.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
framehook.c audiohooks: Reevaluate the bridge technology when an audiohook is added or removed. 2014-10-03 19:42:54 +00:00
fskmodem.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
fskmodem_float.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
fskmodem_int.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
global_datastores.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
hashtab.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
heap.c Fix incorrect usages of ast_realloc(). 2013-09-10 18:05:47 +00:00
http.c HTTP: Fix build for gcc 4.10 2014-07-07 01:10:55 +00:00
image.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
indications.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
io.c Allow Asterisk to compile under GCC 4.10 2014-05-09 22:49:26 +00:00
jitterbuf.c jitterbuf: Fix memory leak on jitter buffer reset 2013-10-24 19:42:21 +00:00
json.c Multiple revisions 420089-420090,420097 2014-08-05 21:44:09 +00:00
libasteriskssl.c Resolve memory leaks in TLS initialization and TLS client connections 2012-09-14 19:53:43 +00:00
libasteriskssl.exports.in Address OpenSSL initialization issues when using third-party libraries. 2012-01-30 21:21:16 +00:00
loader.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
lock.c Revert -r411073. It didn't help and blew up the system. 2014-03-25 15:47:17 +00:00
logger.c logger: Don't store verbose-magic in the log files. 2014-08-13 07:54:10 +00:00
manager.c ast_str: Fix improper member access to struct ast_str members. 2014-11-19 17:22:29 +00:00
manager_bridges.c AMI: Allow for command response documentation 2014-07-24 13:00:59 +00:00
manager_channels.c Improve call forwarding reporting, especially with regards to ARI. 2014-08-18 00:57:01 +00:00
manager_endpoints.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
manager_mwi.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
manager_system.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
md5.c md5: supress some compiler warnings. 2012-04-28 01:33:49 +00:00
media_index.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
message.c message: Don't close an AMI connection on SendMessage action error 2014-10-06 18:39:54 +00:00
mixmonitor.c Removed quotes from svn:keywords props on a few files. 2013-07-29 17:51:25 +00:00
named_acl.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
netsock.c Move eid functions to utils.c, mark netsock.h deprecated 2014-06-24 02:50:15 +00:00
netsock2.c pjsip cli: Change Identify to show CIDR notation instead of netmasks. 2014-06-19 20:13:20 +00:00
optional_api.c Logger/CLI/etc.: Fix some aesthetic issues; reduce chatty verbose messages 2014-05-28 22:54:12 +00:00
parking.c res_pjsip_refer: Fix bugs involving Parking/PJSIP/transfers 2014-05-22 15:52:30 +00:00
pbx.c pbx: Fix off-nominal case where a freed extension may still be used. 2014-11-12 16:13:15 +00:00
pickup.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
plc.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
poll.c Merged revisions 285268 via svnmerge from 2010-09-07 19:09:08 +00:00
presencestate.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
privacy.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
rtp_engine.c main/rtp_engine: Fix crash when processing more than one RTCP report info block 2014-11-13 00:23:20 +00:00
say.c app_voicemail, say: Add support for Japanese Language 2014-06-30 04:00:19 +00:00
sched.c Scheduler: Fix a nasty scheduler caching bug which makes new tasks not execute 2014-10-14 19:12:58 +00:00
sdp_srtp.c sdp_srtp: Add new lines to some WARNING messages 2014-10-06 12:39:03 +00:00
security_events.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
sem.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
sha1.c Doxygen Updates - janitor work 2012-09-21 17:14:59 +00:00
sip_api.c Don't make chan_sip export global symbols. 2012-10-11 15:49:02 +00:00
slinfactory.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
smoother.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
sorcery.c sorcery: Prevent SEGV in sorcery_wizard_create when there's no create function 2014-10-03 15:55:57 +00:00
sounds_index.c Indexer: Format message types may not exist 2014-10-08 14:54:54 +00:00
srv.c Removed #if checks for crazy old versions of OS X. 2013-05-08 20:25:28 +00:00
stasis.c Stasis: Relegate log message to dev-mode 2014-10-08 18:24:47 +00:00
stasis_bridges.c Fix race condition that could result in ARI transfer messages not being sent. 2014-11-14 15:28:42 +00:00
stasis_cache.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
stasis_cache_pattern.c stasis: use ao2_t_alloc for certain object allocators 2014-07-18 19:55:24 +00:00
stasis_channels.c stasis_channels.c: Resolve unfinished Dials when doing masquerades (Part 2) 2014-10-14 16:43:33 +00:00
stasis_endpoints.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
stasis_message.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
stasis_message_router.c stasis: fix call to ao2_t_alloc for stasis_message_router_create 2014-07-18 21:25:14 +00:00
stasis_system.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
strcompat.c Add builtin roundf() for systems lacking it. 2013-01-19 20:54:07 +00:00
strings.c Add support for RFC 4662 resource list subscriptions. 2014-08-07 19:26:32 +00:00
stun.c stun: correct attribute string padding to match rfc 2014-11-14 15:52:21 +00:00
syslog.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
taskprocessor.c chan_pjsip: Fix deadlock when masquerading PJSIP channels. 2014-10-03 17:47:42 +00:00
tcptls.c AST-2014-011: Fix POODLE security issues 2014-10-20 14:20:15 +00:00
tdd.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
term.c Revamp of terminal color codes 2013-02-14 18:47:56 +00:00
test.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
threadpool.c threadpool.c: Minor cleanup fixes. 2014-09-29 20:28:24 +00:00
threadstorage.c Unregister CLI commands on exit 2013-08-20 15:36:10 +00:00
timing.c timing: Improve performance for most timing implementations. 2014-02-07 20:01:45 +00:00
translate.c translage.c: Fix regression when generating translation path strings. 2014-10-21 18:04:43 +00:00
udptl.c udptl: Correct FEC to not consider negative sequence numbers as missing 2014-06-26 12:24:25 +00:00
ulaw.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
uri.c uri: Quiet warning about type qualifiers ignored on function return type 2014-08-21 14:42:12 +00:00
utils.c Fix unintential memory retention in stringfields. 2014-11-06 09:18:48 +00:00
uuid.c Add an \extref doxygen pointer for libuuid. 2013-04-26 20:32:11 +00:00
xml.c Detect and use xsltCleanupGlobals when available 2013-10-03 18:00:15 +00:00
xmldoc.c xmldocs: Add support for an <example> tag in the Asterisk XML Documentation 2014-07-31 11:49:40 +00:00