[mythtv-commits] [MythTV/mythtv] 8e2872: Crash of backend on delete of program being recorded
kmdewaal
noreply at github.com
Sun May 17 18:09:08 UTC 2020
Branch: refs/heads/master
Home: https://github.com/MythTV/mythtv
Commit: 8e2872679315547abc3c2f1a91e0f7b8baac79dc
https://github.com/MythTV/mythtv/commit/8e2872679315547abc3c2f1a91e0f7b8baac79dc
Author: Klaas de Waal <kdewaal at mythtv.org>
Date: 2020-05-17 (Sun, 17 May 2020)
Changed paths:
M mythtv/programs/mythbackend/httpstatus.cpp
M mythtv/programs/mythbackend/mainserver.cpp
M mythtv/programs/mythbackend/scheduler.cpp
M mythtv/programs/mythbackend/services/dvr.cpp
Log Message:
-----------
Crash of backend on delete of program being recorded
Fix this crash and similar backend crashes in the scheduler
by replacing all iterations over m_tvList/m_encoderLink/m_pEncoders
from using the Qt extension foreach to the C++11 range-based for loop.
The foreach apparently makes a deep copy of the container thereby
invalidating the iterators that may be active on the same container
simultaneously in a different thread.
As an additional safeguard the qAsConst, a Qt-specific variant
of std:as_const, is added to all loops.
Fixes #13571
More information about the mythtv-commits
mailing list