diff --git a/base/src/core/trace_session_component.cc b/base/src/core/trace_session_component.cc index 03c7f4befc..527980122c 100644 --- a/base/src/core/trace_session_component.cc +++ b/base/src/core/trace_session_component.cc @@ -41,7 +41,11 @@ Policy_id Session_component::alloc_policy(size_t size) if (size > _argument_buffer.size) throw Policy_too_large(); - Policy_id const id(_policy_cnt++); + /* + * Using prefix incrementation makes sure a policy with id == 0 is + * invalid. + */ + Policy_id const id(++_policy_cnt); if (!_md_alloc.withdraw(size)) throw Out_of_metadata();