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

Commit d0a7eee6 authored by Srinivasarao Pathipati's avatar Srinivasarao Pathipati
Browse files

haven: hh_rm_core: fix ID leaking



Remove IDs from hh_rm_call_idr in failure paths of hh_rm_call().

Change-Id: I2e2817bdd22f570ebb299ceebed0677817815194
Signed-off-by: default avatarSrinivasarao Pathipati <quic_c_spathi@quicinc.com>
parent 3497dfc2
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -644,14 +644,14 @@ void *hh_rm_call(hh_rm_msgid_t message_id,
			     connection->recv_buff, connection->recv_buff_size,
			     false);

	mutex_lock(&hh_rm_call_idr_lock);
	idr_remove(&hh_rm_call_idr, connection->seq);
	mutex_unlock(&hh_rm_call_idr_lock);

	ret = connection->recv_buff;
	*resp_buff_size = connection->recv_buff_size;

out:
	mutex_lock(&hh_rm_call_idr_lock);
	idr_remove(&hh_rm_call_idr, connection->seq);
	mutex_unlock(&hh_rm_call_idr_lock);

	kfree(connection);
	return ret;
}