diff --git a/components/bt/esp_ble_mesh/core/transport.enh.c b/components/bt/esp_ble_mesh/core/transport.enh.c index 967b523379..3147ee86a1 100644 --- a/components/bt/esp_ble_mesh/core/transport.enh.c +++ b/components/bt/esp_ble_mesh/core/transport.enh.c @@ -2528,10 +2528,6 @@ found_rx: } } - if (rpl) { - bt_mesh_update_rpl(rpl, net_rx); - } - /* Mark segment as received */ rx->block |= BIT(seg_o); @@ -2543,6 +2539,10 @@ found_rx: BT_DBG("Complete SDU"); + if (rpl) { + bt_mesh_update_rpl(rpl, net_rx); + } + *pdu_type = BLE_MESH_FRIEND_PDU_COMPLETE; /* Stop SAR Discard timer when processing result is Last Segment */