From f5f0e6fb6ac100b628b8141b8716403bb250c20c Mon Sep 17 00:00:00 2001 From: Bert Hubert Date: Wed, 2 Feb 2011 08:46:46 +0000 Subject: [PATCH] this is probably a speedup, but a cleanup in any case git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@1962 d19b8d6e-7fed-0310-83ef-9ca221ded41b --- pdns/signingpipe.cc | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/pdns/signingpipe.cc b/pdns/signingpipe.cc index 1c1990639..4393d1bc3 100644 --- a/pdns/signingpipe.cc +++ b/pdns/signingpipe.cc @@ -51,7 +51,7 @@ bool ChunkedSigningPipe::submit(const DNSResourceRecord& rr) void ChunkedSigningPipe::sendChunkToSign() { if(!d_mustSign) { - copy(d_toSign.begin(), d_toSign.end(), back_inserter(d_chunk)); + d_chunk.insert(d_chunk.end(), d_toSign.begin(), d_toSign.end()); d_toSign.clear(); return; } @@ -66,7 +66,7 @@ void ChunkedSigningPipe::sendChunkToSign() while(d_outstanding && read(d_backpipe[0], &signedChunk, sizeof(signedChunk)) > 0) { --d_outstanding; - copy(signedChunk->begin(), signedChunk->end(), back_inserter(d_chunk)); + d_chunk.insert(d_chunk.end(), signedChunk->begin(), signedChunk->end()); delete signedChunk; } @@ -110,11 +110,9 @@ vector ChunkedSigningPipe::getChunk(bool final) } chunk_t::size_type amount=min(d_chunkrecords, d_chunk.size()); - chunk_t chunk; - copy(d_chunk.begin(), d_chunk.begin() + amount, back_inserter(chunk)); - - vector overhang(d_chunk.begin() + amount, d_chunk.end()); - d_chunk.swap(overhang); + chunk_t chunk(d_chunk.begin(), d_chunk.begin() + amount); + + d_chunk.erase(d_chunk.begin(), d_chunk.begin() + amount); return chunk; } -- 2.50.1