Signed-off-by: Ning Yao <zay11022@gmail.com>
return (length() % align) == 0;
}
bool is_n_page_sized() const { return is_n_align_sized(CEPH_PAGE_SIZE); }
+ bool is_partial() const { return start() > 0 || end() < raw_length(); }
// accessors
raw *get_raw() const { return _raw; }
goto out;
}
for (map<string,bufferptr>::const_iterator p = aset.begin();
- p != aset.end(); ++p)
- o->onode.attrs[p->first] = p->second;
+ p != aset.end(); ++p) {
+ if (p->second.is_partial())
+ o->onode.attrs[p->first] = bufferptr(p->second.c_str(), p->second.length());
+ else
+ o->onode.attrs[p->first] = p->second;
+ }
txc->write_onode(o);
r = 0;