Summary: | kfilemetadatareader hogs all memory and cpu | ||
---|---|---|---|
Product: | [Unmaintained] kdelibs | Reporter: | harri |
Component: | general | Assignee: | Jos van den Oever <jos> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | adaptee, faure, kdelibs-bugs, nate |
Priority: | NOR | Keywords: | testcase |
Version: | 4.8.4 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | corrupted wav file that can be used to reproduce the problem |
Description
harri
2012-07-10 09:39:05 UTC
Created attachment 72422 [details]
corrupted wav file that can be used to reproduce the problem
The bug is in strigi/libstreamanalyzer/plugins/eventplugins/riffeventanalyzer.cpp pos goes up to 44 (8 by 8), and then this code runs: 350│ handleChunkData(offset + pos, data + pos, length - pos); 351│ uint32_t fp = chunks.top().start + chunks.top().size; 352│ if (fp <= offset + length) { 353├> pos = fp - offset; At this point, fp is 0, and offset is 0, so "pos" goes back to 0, and all this starts all over again. This needs someone with actual knowledge of the file format, to know what to spot as the actual cause for aborting. Maybe "pos" should never go back? Or maybe it can happen in some valid cases? *** Bug 306019 has been marked as a duplicate of this bug. *** *** Bug 306019 has been marked as a duplicate of this bug. *** No longer relevant in the Baloo era. |