unsigned blocksize = (*chunks.begin()).second.length();
for (unsigned int i = 0; i < k + m; i++) {
if (chunks.find(i) == chunks.end()) {
+ bufferlist tmp;
bufferptr ptr(buffer::create_aligned(blocksize, SIMD_ALIGN));
- (*decoded)[i].push_front(ptr);
+ tmp.push_back(ptr);
+ tmp.claim_append((*decoded)[i]);
+ (*decoded)[i].swap(tmp);
} else {
(*decoded)[i] = chunks.find(i)->second;
(*decoded)[i].rebuild_aligned(SIMD_ALIGN);
unsigned blocksize = (*chunks.begin()).second.length();
for (unsigned int i = 0; i < k + m; i++) {
if (chunks.find(i) == chunks.end()) {
+ bufferlist tmp;
bufferptr ptr(buffer::create_aligned(blocksize, SIMD_ALIGN));
- (*decoded)[i].push_front(ptr);
+ tmp.push_back(ptr);
+ tmp.claim_append((*decoded)[i]);
+ (*decoded)[i].swap(tmp);
} else {
(*decoded)[i] = chunks.find(i)->second;
(*decoded)[i].rebuild_aligned(SIMD_ALIGN);
for (set<int>::iterator j = want_to_encode.begin();
j != want_to_encode.end();
++j) {
+ bufferlist tmp;
bufferptr chunk(ptr, (*j) * chunk_length, chunk_length);
- (*encoded)[*j].push_front(chunk);
+ tmp.push_back(chunk);
+ tmp.claim_append((*encoded)[*j]);
+ (*encoded)[*j].swap(tmp);
}
return 0;
}
for (unsigned j = 0; j < chunk_length; j++) {
c[j] = a[j] ^ b[j];
}
- (*decoded)[*i].push_front(chunk);
+
+ bufferlist tmp;
+ tmp.append(chunk);
+ tmp.claim_append((*decoded)[*i]);
+ (*decoded)[*i].swap(tmp);
}
}
return 0;
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
in_ptr.append(payload, strlen(payload));
bufferlist in;
- in.push_front(in_ptr);
+ in.push_back(in_ptr);
int want_to_encode[] = { 0, 1, 2 };
map<int, bufferlist> encoded;
EXPECT_EQ(0, example.encode(set<int>(want_to_encode, want_to_encode+3),
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
in_ptr.append(payload, strlen(payload));
bufferlist in;
- in.push_front(in_ptr);
+ in.push_back(in_ptr);
set<int>want_to_encode;
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
in_ptr.append(payload, strlen(payload));
bufferlist in;
- in.push_front(in_ptr);
+ in.push_back(in_ptr);
set<int>want_to_encode;
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
in_ptr.append(payload, strlen(payload));
bufferlist in;
- in.push_front(in_ptr);
+ in.push_back(in_ptr);
set<int>want_to_encode;
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
in_ptr.append(payload, strlen(payload));
bufferlist in;
- in.push_front(in_ptr);
+ in.push_back(in_ptr);
set<int>want_to_encode;
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
in_ptr.append(payload, strlen(payload));
bufferlist in;
- in.push_front(in_ptr);
+ in.push_back(in_ptr);
int want_to_encode[] = { 0, 1, 2, 3 };
map<int, bufferlist> encoded;
EXPECT_EQ(0, jerasure.encode(set<int>(want_to_encode, want_to_encode+4),
for (unsigned int i = 0; i < lrc.get_chunk_count(); ++i) {
want_to_encode.insert(i);
bufferptr ptr(buffer::create_page_aligned(chunk_size));
- encoded[i].push_front(ptr);
+ bufferlist tmp;
+ tmp.push_back(ptr);
+ tmp.claim_append(encoded[i]);
+ encoded[i].swap(tmp);
}
const vector<int> &mapping = lrc.get_chunk_mapping();
char c = 'A';
for (unsigned int i = 0; i < lrc.get_chunk_count(); ++i) {
want_to_encode.insert(i);
bufferptr ptr(buffer::create_page_aligned(chunk_size));
- encoded[i].push_front(ptr);
+ bufferlist tmp;
+ tmp.push_back(ptr);
+ tmp.claim_append(encoded[i]);
+ encoded[i].swap(tmp);
}
const vector<int> &mapping = lrc.get_chunk_mapping();
char c = 'A';