Skip to content

Commit

Permalink
Bluetooth: Mesh: Fix tx seg buffer with NULL pointer reference
Browse files Browse the repository at this point in the history
Fix tx seg buffer with NULL pointer reference if enable mesh friendly

Signed-off-by: chao an <anchao@xiaomi.com>
  • Loading branch information
anchao authored and jhedberg committed Aug 4, 2020
1 parent 6c7a387 commit 5328adc
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions subsys/bluetooth/mesh/transport.c
Original file line number Diff line number Diff line change
Expand Up @@ -532,6 +532,8 @@ static int send_seg(struct bt_mesh_net_tx *net_tx, struct net_buf_simple *sdu,

BT_DBG("seg %u: %s", seg_o, bt_hex(buf, len));

tx->seg[seg_o] = buf;

if (IS_ENABLED(CONFIG_BT_MESH_FRIEND)) {
enum bt_mesh_friend_pdu_type type;

Expand All @@ -552,11 +554,11 @@ static int send_seg(struct bt_mesh_net_tx *net_tx, struct net_buf_simple *sdu,
* out through the Friend Queue.
*/
k_mem_slab_free(&segs, &buf);
continue;
tx->seg[seg_o] = NULL;
}

}

tx->seg[seg_o] = buf;
}

/* This can happen if segments only went into the Friend Queue */
Expand Down

0 comments on commit 5328adc

Please sign in to comment.