Skip to content
Snippets Groups Projects
  1. Oct 03, 2018
  2. Oct 02, 2018
  3. Oct 01, 2018
  4. Sep 28, 2018
  5. Sep 27, 2018
    • Corey Farrell's avatar
      astobj2: Reduce memory overhead. · 62a0db2d
      Corey Farrell authored
      Reduce options to 2-bit field, magic to 30 bit field.  Move ref_counter
      next to options and explicitly use int32_t so the fields will pack.
      
      This reduces memory overhead for every ao2 object by 8 bytes on x86_64.
      
      Change-Id: Idc1baabb35ec3b3d8de463c4fa3011eaf7fcafb5
      62a0db2d
    • Sean Bright's avatar
      config.c: Cleanup AST_INCLUDE_GLOB · ac23e5ad
      Sean Bright authored
      * In main/config.c, AST_INCLUDE_GLOB is fixed to '1' making the #ifdefs
        pointless.
      
      * In utils/extconf.c, AST_INCLUDE_GLOB is never defined so there is a
        lot of dead code.
      
      Change-Id: I1bad1a46d7466ddf90d52cc724e997195495226c
      ac23e5ad
    • George Joseph's avatar
    • Joshua Colp's avatar
    • Corey Farrell's avatar
      astobj2: Fix shutdown order. · 39bf9881
      Corey Farrell authored
      When REF_DEBUG and AO2_DEBUG are both enabled we closed the refs log
      before we shutdown astobj2_container.  This caused the AO2_DEBUG
      container registration container to be reported as a leak.
      
      Change-Id: If9111c4c21c68064b22c546d5d7a41fac430430e
      39bf9881
    • Cao Minh Hiep's avatar
      app_queue: Fix Attended transfer hangup with removing pending member. · f23a1224
      Cao Minh Hiep authored
      This issue related to setting of holdtime, announcements, member delays.
      It works well if we set the member delays to "0" and no announcements
      and no holdtime.This issue will happen if we set member delays to "1",
      "2"... or announcements or holdtime and hangs up the call during
      processing it.
      
      And here is the reason:
      (At the step of answering a phone.)
      It takes care any holdtime, announcements, member delays,
      or other options after a call has been answered if it exists.
      
      Normally, After the call has been aswered,
      and we wait for the processing one of the cases of the member delays
      or hold time or announcements finished, "if (ast_check_hangup(peer))"
      will be not executed, then queue will be updated at update_queue().
      Here, pending member will be removed.
      
      However, after the call has been aswered,
      if we hangs up the call during one of the cases of the member delays
      or hold time or announcements, "if (ast_check_hangup(peer))"
      will be executed.
      outgoing = NULL and at hangupcalls, pending members will not be removed.
      
      * This fixed patch will remove the pending member from container
      before hanging up the call with outgoing is NULL.
      
      ASTERISK-27920
      
      Reported by: Cao Minh Hiep
      Tested by: Cao Minh Hiep
      
      Change-Id: Ib780fbf48ace9d2d8eaa1270b9d530a4fc14c855
      f23a1224
  6. Sep 26, 2018
    • Moritz Fain's avatar
      res_stasis: Fix stale data in ARI bridges · f3422312
      Moritz Fain authored
      Fixed an issue that resulted in "Allocation failed" each time an ARI
      request was made to start playing MOH on a bridge.
      
      In bridge_moh_create() we were attaching the after bridge callbacks to
      chan which is the ;1 channel of the unreal channel pair.  We should have
      attached them to the ;2 channel which is pushed into the bridge by
      ast_unreal_channel_push_to_bridge().  The callbacks are called when the
      specific channel leaves the bridging system.  Since the ;1 channel is
      never put into a bridge the callbacks never get called.  The callbacks
      then never remove the moh_wrapper from the app_bridges_moh container.  As
      a result we cannot find the channel associated with the wrapper to start
      MOH because it has hungup.  This is the reason causing the reported issue.
      
      * Rather than using after bridge callbacks to cleanup, we now have
      moh_channel_thread() doing the cleanup when the channel hangs up.
      
      * Fixed moh_channel_thread() accumulating control frames on the stasis
      bridge MOH channel until MOH is stopped.  Control frames are no longer
      accumulated while MOH is playing.
      
      * Fixed channel ref counting issue.  stasis_app_bridge_moh_channel() may
      or may not return a channel ref.  As a result ast_ari_bridges_start_moh()
      wouldn't know it may have a channel ref to release.
      stasis_app_bridge_moh_channel() will now return a ref with the channel it
      returns.
      
      * Eliminated RAII_VAR in bridge_moh_create().
      
      ASTERISK-26094 #close
      
      Change-Id: Ibff479e167b3320c68aaabfada7e1d0ef7bd548c
      f3422312
Loading