src/glusterd-snapshot-utils.c: dereferencing the snap_vol before freeing it
The patch fixes CID: 1325520 Change-Id: Ic7d3fac6adabe96d1d44f13b57d6dc67da0476d1 updates: bz#789278 Signed-off-by: Arjun <arjsharm@redhat.com>
This commit is contained in:
parent
c34e4161f3
commit
63a8d72736
@ -81,26 +81,6 @@ glusterd_cleanup_snaps_for_volume(glusterd_volinfo_t *volinfo)
|
||||
cds_list_for_each_entry_safe(snap_vol, dummy_snap_vol,
|
||||
&volinfo->snap_volumes, snapvol_list)
|
||||
{
|
||||
ret = glusterd_store_delete_volume(snap_vol);
|
||||
if (ret) {
|
||||
gf_msg(this->name, GF_LOG_WARNING, 0, GD_MSG_VOL_DELETE_FAIL,
|
||||
"Failed to remove "
|
||||
"volume %s from store",
|
||||
snap_vol->volname);
|
||||
op_ret = ret;
|
||||
continue;
|
||||
}
|
||||
|
||||
ret = glusterd_volinfo_delete(snap_vol);
|
||||
if (ret) {
|
||||
gf_msg(this->name, GF_LOG_WARNING, 0, GD_MSG_VOL_DELETE_FAIL,
|
||||
"Failed to remove "
|
||||
"volinfo %s ",
|
||||
snap_vol->volname);
|
||||
op_ret = ret;
|
||||
continue;
|
||||
}
|
||||
|
||||
snap = snap_vol->snapshot;
|
||||
ret = glusterd_store_delete_snap(snap);
|
||||
if (ret) {
|
||||
@ -121,6 +101,26 @@ glusterd_cleanup_snaps_for_volume(glusterd_volinfo_t *volinfo)
|
||||
op_ret = ret;
|
||||
continue;
|
||||
}
|
||||
|
||||
ret = glusterd_store_delete_volume(snap_vol);
|
||||
if (ret) {
|
||||
gf_msg(this->name, GF_LOG_WARNING, 0, GD_MSG_VOL_DELETE_FAIL,
|
||||
"Failed to remove "
|
||||
"volume %s from store",
|
||||
snap_vol->volname);
|
||||
op_ret = ret;
|
||||
continue;
|
||||
}
|
||||
|
||||
ret = glusterd_volinfo_delete(snap_vol);
|
||||
if (ret) {
|
||||
gf_msg(this->name, GF_LOG_WARNING, 0, GD_MSG_VOL_DELETE_FAIL,
|
||||
"Failed to remove "
|
||||
"volinfo %s ",
|
||||
snap_vol->volname);
|
||||
op_ret = ret;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
return op_ret;
|
||||
|
Loading…
x
Reference in New Issue
Block a user