Summary: | Solid::Predicate::isValid causes double free if invalid | ||
---|---|---|---|
Product: | [Unmaintained] solid | Reporter: | Ben Cooksley <bcooksley> |
Component: | libsolid-frontend | Assignee: | Kevin Ottens <ervin> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | ambrop7 |
Priority: | NOR | ||
Version First Reported In: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Bug Depends on: | |||
Bug Blocks: | 184749 |
Description
Ben Cooksley
2009-02-18 05:33:11 UTC
SVN commit 932881 by ervin: Slightly rework the parser to be more careful about what we consider as the result predicate (if the former result is used in a compound predicate it's not the result anymore). It avoid the double freeing. And since we're at it also plug some memory leaks in there by forcing the lexer to cleanup its memory when the parsing is over and by providing %destructor sections to the bison parser to clean memory correctly on parse errors. BUGS: 184751 M +72 -16 solid/predicate_lexer.c M +46 -24 solid/predicate_parser.c M +1 -1 solid/predicate_parser.h M +7 -0 solid/predicate_parser.y M +17 -1 solid/predicateparse.cpp M +1 -0 solid/predicateparse.h M +3 -0 tests/solidhwtest.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=932881 *** Bug 184710 has been marked as a duplicate of this bug. *** |