![]() sysdeps/unix/sysv/linux/x86_64/clone.S:95Īnd this is the thread which created the `CBusyWaiter` (at the time of #3 0x0000562afcf34466 in (anonymous namespace)::UniqueLock::UniqueLock (this=0x7ff1d37fdb80, lockable=.) at xbmc/threads/Lockables.h:132 `CBusyWaiter`, by adding another `StopThread()` call to its ![]() Thread were running anymore, the call would be useless.Īll uses of `CThread` without additional calls to `StopThread()` are aĬrash bug, but this commit fixes only the instance in class Properly, because it will crash the thread in any case. ![]() `StopThread()` from the base class destructor can never ever work `~CThread()` implementation wrong from the bottom: calling This class morphing while calling destructors is what makes the whole This however triggers the crash in the still-running `CBusyWaiter` instance has already been morphed back to its base class Properly `~CThread()` calls `StopThread()`, but by then, the And if thatĬancellation happens, nobody takes care for stopping the CThread ![]() How cancellation gets triggered, making it more likely. Kodi crash bug based on a misunderstanding how destructors work in Lives in the stack frame of `CGUIDialogBusy::Wait()`. Class `CBusyWaiter` derives from `CThread`, and its only instance ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |