From 16c0fea25678edc15ca820475fe452031bd59599 Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Fri, 23 Jul 2010 11:43:25 -0700 Subject: [PATCH] librados: remove use of snapid_t --- src/include/librados.hpp | 4 ++-- src/librados.cc | 6 +++++- src/rbd.cc | 6 +++++- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/include/librados.hpp b/src/include/librados.hpp index 950b3941a72e2..b0d3622e8715e 100644 --- a/src/include/librados.hpp +++ b/src/include/librados.hpp @@ -37,8 +37,8 @@ namespace librados { typedef void (*callback_t)(completion_t cb, void *arg); struct SnapContext { - snapid_t seq; - vector snaps; + snap_t seq; + vector snaps; }; diff --git a/src/librados.cc b/src/librados.cc index 02d078a561d7f..7ddf4c54e9ccd 100644 --- a/src/librados.cc +++ b/src/librados.cc @@ -1544,7 +1544,11 @@ int Rados::selfmanaged_snap_rollback_object(const rados_pool_t pool, ::SnapContext sn; if (!client) return -EINVAL; sn.seq = snapc.seq; - sn.snaps = snapc.snaps; + sn.snaps.clear(); + vector::iterator iter = snapc.snaps.begin(); + for (; iter != snapc.snaps.end(); ++iter) { + sn.snaps.push_back(*iter); + } return ((RadosClient *)client)->selfmanaged_snap_rollback_object(pool, oid, sn, snapid); } diff --git a/src/rbd.cc b/src/rbd.cc index 81dd4487c9d09..07849edc58898 100644 --- a/src/rbd.cc +++ b/src/rbd.cc @@ -284,7 +284,11 @@ static int rollback_image(pools_t& pp, struct rbd_obj_header_ondisk *header, string oid = get_block_oid(header, i); librados::SnapContext sn; sn.seq = snapc.seq; - sn.snaps = snapc.snaps; + sn.snaps.clear(); + vector::iterator iter = snapc.snaps.begin(); + for (; iter != snapc.snaps.end(); ++iter) { + sn.snaps.push_back(*iter); + } r = rados.selfmanaged_snap_rollback_object(pp.data, oid, sn, snapid); if (r < 0 && r != -ENOENT) return r; -- 2.39.5