From 2e051ad9e234e1ca8fcf7cc8479b47b6981ae8d0 Mon Sep 17 00:00:00 2001 From: Gunnar Beutner Date: Wed, 27 Mar 2013 18:02:51 +0000 Subject: [PATCH] Minor performance tweaks. --- components/delegation/delegationcomponent.cpp | 2 ++ lib/base/process-unix.cpp | 14 +++++++------- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/components/delegation/delegationcomponent.cpp b/components/delegation/delegationcomponent.cpp index bbf7df391..a14371c62 100644 --- a/components/delegation/delegationcomponent.cpp +++ b/components/delegation/delegationcomponent.cpp @@ -127,9 +127,11 @@ void DelegationComponent::DelegationTimerHandler(void) std::vector::iterator cit; if (!candidates.empty()) { +#ifdef _DEBUG std::ostringstream msgbuf; msgbuf << "Service: " << service->GetName() << ", candidates: " << candidates.size(); Log(LogDebug, "delegation", msgbuf.str()); +#endif /* _DEBUG */ BOOST_FOREACH(const Endpoint::Ptr& candidate, candidates) { avg_services += histogram[candidate]; diff --git a/lib/base/process-unix.cpp b/lib/base/process-unix.cpp index f86ed700a..1b90a9eb6 100644 --- a/lib/base/process-unix.cpp +++ b/lib/base/process-unix.cpp @@ -155,17 +155,17 @@ ProcessResult Process::Run(void) (void) close(fds[1]); char buffer[512]; - int rc; std::ostringstream outputStream; - do { - rc = read(fd, buffer, sizeof(buffer)); + for (;;) { + int rc = read(fd, buffer, sizeof(buffer)); - if (rc > 0) { - outputStream.write(buffer, rc); - } - } while (rc > 0); + if (rc <= 0) + break; + + outputStream.write(buffer, rc); + } String output = outputStream.str(); -- 2.40.0