Gbp-Pq: Name CVE-2021-45762.patch
}
/*regular field*/
else if (!gf_sg_vrml_is_sf_field(field.fieldType)) {
- gf_sg_vrml_mf_reset(field.far_ptr, field.fieldType);
+ e = gf_sg_vrml_mf_reset(field.far_ptr, field.fieldType);
+ if (e) return e;
}
/*parse the field*/
* (GF_ChildNodeItem **)field->far_ptr = NULL;
} else {
//remove all items of the MFField
- gf_sg_vrml_mf_reset(field->far_ptr, field->fieldType);
+ e = gf_sg_vrml_mf_reset(field->far_ptr, field->fieldType);
+ if (e) return e;
}
}
} else {
e = BD_DecMFFieldVec(codec, bs, node, field, is_mem_com);
}
- if (e) return e;
+ if (e) return codec->LastError = e;
}
}
return GF_OK;
GF_Err gf_sg_vrml_mf_reset(void *mf, u32 FieldType)
{
GenMFField *mffield = (GenMFField *)mf;
- if (!mffield->array) return GF_OK;
+ if (!mffield || !mffield->array) return GF_OK;
//field we can't copy
if (gf_sg_vrml_is_sf_field(FieldType)) return GF_BAD_PARAM;