Name |
Last commit
|
Last Update |
---|---|---|
.. | ||
CMakeLists.txt | ||
FFmpegSource.cpp | ||
FFmpegSource.h | ||
Process.cpp | ||
Process.h | ||
System.cpp | ||
System.h | ||
WebApi.cpp | ||
WebApi.h | ||
WebHook.cpp | ||
WebHook.h | ||
main.cpp |
1. s_???Map.clear()会触发key/value的析构,先执行析构再移除map成员。析构执行完之前map成员仍然有可见性。 2. s_???Map的成员析构时,根据当前状态,可能触发回调,如播放终止回调。 3. 在状态变更的回调函数中,通过s_???Map.erase(key)的方式解注册,此时也会触发一次析构。 两次析构导致double free:a) map.erase, b) map.clear Signed-off-by: ArmstrongCN <armstrong@sweelia.com>
Name |
Last commit
|
Last Update |
---|---|---|
.. | ||
CMakeLists.txt | 正在载入提交数据... | |
FFmpegSource.cpp | 正在载入提交数据... | |
FFmpegSource.h | 正在载入提交数据... | |
Process.cpp | 正在载入提交数据... | |
Process.h | 正在载入提交数据... | |
System.cpp | 正在载入提交数据... | |
System.h | 正在载入提交数据... | |
WebApi.cpp | 正在载入提交数据... | |
WebApi.h | 正在载入提交数据... | |
WebHook.cpp | 正在载入提交数据... | |
WebHook.h | 正在载入提交数据... | |
main.cpp | 正在载入提交数据... |