| 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 | 正在载入提交数据... |