If an error arises in the init flow of the snapshot replayer and the
function returns before the call on `register_local_update_watcher`
the value of `m_update_watch_ctx` will not be initialized. Therefore,
on the shutdown phase, the replayer will try to free this pointer
and segfault.
This commit fixes this issue by setting `m_update_watch_ctx` to
`nullptr`.
Fixes: https://tracker.ceph.com/issues/50931
Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@cern.ch>
int m_error_code = 0;
std::string m_error_description;
- C_UpdateWatchCtx* m_update_watch_ctx;
+ C_UpdateWatchCtx* m_update_watch_ctx = nullptr;
uint64_t m_local_update_watcher_handle = 0;
uint64_t m_remote_update_watcher_handle = 0;
bool m_image_updated = false;