pod: check that choices are not empty

Before using the contents of a choice, check that it is not empty to
avoid reading out of bounds.
This commit is contained in:
Demi Marie Obenour 2025-07-08 18:25:51 -04:00 committed by Wim Taymans
parent d37bdf5cbf
commit b04da87e38
7 changed files with 18 additions and 4 deletions

View file

@ -117,6 +117,9 @@ SPA_API_POD_COMPARE int spa_pod_compare(const struct spa_pod *pod1,
if (pod1->type != pod2->type)
return -EINVAL;
if (n_vals1 < 1)
return -EINVAL; /* empty choice */
switch (pod1->type) {
case SPA_TYPE_Struct:
{