Clean memory on failure paths
As reported by oss-fuzz, some memory was not correctly cleaned on exit paths. This should handle also couple of similar issues that I noticed around while investigating the issue.
So far private bug with more description: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28490
Checklist
-
Commits have Signed-off-by:with name/author being identical to the commit author -
Code modified for feature - [-] Test suite updated with functionality tests
- [-] Test suite updated with negative tests
- [-] Documentation updated
Reviewer's checklist:
-
Any issues marked for closing are addressed -
There is a test suite reasonably covering new functionality or modifications -
Function naming, parameters, return values, types, etc., are consistent and according to CONTRIBUTING.md -
This feature/change has adequate documentation added -
No obvious mistakes in the code