Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9ab0a620 authored by Pavlin Radoslavov's avatar Pavlin Radoslavov Committed by android-build-merger
Browse files

Revert "Revert "Avoid double memory free and crash during LE discovery or disconnect""

am: 73f865ef

* commit '73f865ef':
  Revert "Revert "Avoid double memory free and crash during LE discovery or disconnect""
parents 356c97be 73f865ef
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@
#include "bt_common.h"
#include "l2c_api.h"
#include "osi/include/log.h"
#include "stack/l2cap/l2c_int.h"
#include "utl.h"

#if (defined BTA_HH_LE_INCLUDED && BTA_HH_LE_INCLUDED == TRUE)
@@ -1064,8 +1065,10 @@ void bta_gattc_disc_cmpl(tBTA_GATTC_CLCB *p_clcb, tBTA_GATTC_DATA *p_data)
    else if (p_q_cmd != NULL)
    {
        p_clcb->p_q_cmd = NULL;

        /* execute pending operation of link block still present */
        if (l2cu_find_lcb_by_bd_addr(p_clcb->p_srcb->server_bda, BT_TRANSPORT_LE) != NULL) {
            bta_gattc_sm_execute(p_clcb, p_q_cmd->hdr.event, p_q_cmd);
        }
        /* if the command executed requeued the cmd, we don't
         * want to free the underlying buffer that's being
         * referenced by p_clcb->p_q_cmd
+8 −10
Original line number Diff line number Diff line
@@ -443,14 +443,12 @@ BOOLEAN bta_gattc_enqueue(tBTA_GATTC_CLCB *p_clcb, tBTA_GATTC_DATA *p_data)
    if (p_clcb->p_q_cmd == NULL)
    {
        p_clcb->p_q_cmd = p_data;
        return TRUE;
    }
 else
 {
     APPL_TRACE_ERROR("already has a pending command!!");
     /* skip the callback now. ----- need to send callback ? */
 }
 return (p_clcb->p_q_cmd != NULL) ? TRUE : FALSE;

    APPL_TRACE_ERROR ("%s: already has a pending command!!", __func__);
    /* skip the callback now. ----- need to send callback ? */
    return FALSE;
}

/*******************************************************************************