From 3afe715381ca63539bb20609b614f5e60561711a Mon Sep 17 00:00:00 2001 From: Orit Wasserman Date: Mon, 19 Sep 2016 15:05:22 +0200 Subject: [PATCH] rgw: fix decoding of creation_time and last_update. Fixes: http://tracker.ceph.com/issues/17167 Signed-off-by: Orit Wasserman --- src/rgw/rgw_json_enc.cc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/rgw/rgw_json_enc.cc b/src/rgw/rgw_json_enc.cc index b519e6a1c678f..58d5632b148ee 100644 --- a/src/rgw/rgw_json_enc.cc +++ b/src/rgw/rgw_json_enc.cc @@ -580,8 +580,9 @@ void RGWBucketEntryPoint::dump(Formatter *f) const void RGWBucketEntryPoint::decode_json(JSONObj *obj) { JSONDecoder::decode_json("bucket", bucket, obj); JSONDecoder::decode_json("owner", owner, obj); - utime_t ut(creation_time); + utime_t ut; JSONDecoder::decode_json("creation_time", ut, obj); + creation_time = ut.to_real_time(); JSONDecoder::decode_json("linked", linked, obj); JSONDecoder::decode_json("has_bucket_info", has_bucket_info, obj); if (has_bucket_info) { @@ -696,8 +697,9 @@ void RGWBucketInfo::dump(Formatter *f) const void RGWBucketInfo::decode_json(JSONObj *obj) { JSONDecoder::decode_json("bucket", bucket, obj); - utime_t ut(creation_time); + utime_t ut; JSONDecoder::decode_json("creation_time", ut, obj); + creation_time = ut.to_real_time(); JSONDecoder::decode_json("owner", owner, obj); JSONDecoder::decode_json("flags", flags, obj); JSONDecoder::decode_json("zonegroup", zonegroup, obj); @@ -1085,8 +1087,9 @@ void RGWMetadataLogInfo::dump(Formatter *f) const void RGWMetadataLogInfo::decode_json(JSONObj *obj) { JSONDecoder::decode_json("marker", marker, obj); - utime_t ut(last_update); + utime_t ut; JSONDecoder::decode_json("last_update", ut, obj); + last_update = ut.to_real_time(); } void RGWDataChangesLogInfo::dump(Formatter *f) const @@ -1099,8 +1102,9 @@ void RGWDataChangesLogInfo::dump(Formatter *f) const void RGWDataChangesLogInfo::decode_json(JSONObj *obj) { JSONDecoder::decode_json("marker", marker, obj); - utime_t ut(last_update); + utime_t ut; JSONDecoder::decode_json("last_update", ut, obj); + last_update = ut.to_real_time(); } -- 2.39.5