Opened 17 years ago
Closed 17 years ago
#4854 closed defect (duplicate)
Backend crashes with MythEvents; probable memory corruption
Reported by: | Owned by: | Isaac Richards | |
---|---|---|---|
Priority: | major | Milestone: | unknown |
Component: | mythtv | Version: | unknown |
Severity: | high | Keywords: | |
Cc: | Ticket locked: | no |
Description
On an x86_64 box, watching LiveTV and channel hopping (which generates plenty of MythEvents?), I get a backend crash within about 6 channel changes.
I've investigated where the crashes occur with kdbg, and they are caused by a corrupted 'extradata' in a MythEvent?; instrumenting up mythevent.h and mythevent.cpp with a bunch of 'QString crashme=extradata.join(" ")' statements and feeding the core dump to kdbg shows a corrupted extradata field 'most every crash.
However, it's most often the one in the ExtraDataList?() method which fires, and not the one in the constructor, indicating that the QStringList was fine when it was added, and after it was deep copied.
This leads me to think that someone, somewhere, is writing to memory when they shouldn't be :-)
I've spent some time trying to get it to happen with valgrind, but have been unable to produce the problem in that circumstance, so I wonder if it's timing-related? Possibly something is missing a mutex that should have one? The backend is running on a Core2Duo, so threading problems might show up that wouldn't on a single core system.
I'm quite happy to try things. C++ isn't my first language but I can speak pidgin :-)
Duplicate of #4820