From: Gilles DAVID Date: Wed, 12 Feb 2014 16:45:28 +0000 (+0100) Subject: Fix compilation failure X-Git-Tag: V7_4_0a1~7 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=52555887b5a160998dfa60977a5b518ac32b8859;p=modules%2Fyacs.git Fix compilation failure With recent gcc versions, the previous commit does not compile... --- diff --git a/src/engine/ForEachLoop.cxx b/src/engine/ForEachLoop.cxx index 9f277975f..d5c52d4a2 100644 --- a/src/engine/ForEachLoop.cxx +++ b/src/engine/ForEachLoop.cxx @@ -842,10 +842,10 @@ void ForEachLoop::resetState(int level) std::string ForEachLoop::getProgress() const { int nbElems = _splitterNode.getNumberOfElements(); - char* aProgress = new char[]; + std::stringstream aProgress; if (nbElems > 0) - sprintf(aProgress, "%i/%i", _currentIndex, nbElems); + aProgress << _currentIndex << "/" << nbElems; else - sprintf(aProgress, "0"); - return aProgress; + aProgress << "0"; + return aProgress.str(); } diff --git a/src/engine/ForLoop.cxx b/src/engine/ForLoop.cxx index 30fcb66ea..8b3acaeb8 100644 --- a/src/engine/ForLoop.cxx +++ b/src/engine/ForLoop.cxx @@ -267,14 +267,15 @@ std::list ForLoop::getSetOfOutputPort() const std::string ForLoop::getProgress() const { - char* aProgress = new char[]; - sprintf(aProgress, "0"); + std::stringstream aProgress; + aProgress << "0"; AnyInputPort* aNbStepsPort = (AnyInputPort*)&_nbOfTimesPort; if (aNbStepsPort && !aNbStepsPort->isEmpty()) { int nbSteps = aNbStepsPort->getIntValue(); if (nbSteps > 0 && _nbOfTurns >= 0) { - sprintf(aProgress, "%i/%i", _nbOfTurns, nbSteps); + aProgress.clear(); + aProgress << _nbOfTurns << "/" << nbSteps; } } - return aProgress; + return aProgress.str(); } diff --git a/src/engine/Proc.hxx b/src/engine/Proc.hxx index 5300ce684..484839444 100644 --- a/src/engine/Proc.hxx +++ b/src/engine/Proc.hxx @@ -65,7 +65,7 @@ namespace YACS virtual const Proc * getProc() const; YACS::StatesForNode getNodeState(int numId); - std::string Proc::getNodeProgress(int numId); + std::string getNodeProgress(int numId); std::string getInPortValue(int nodeNumId, std::string portName); std::string setInPortValue(std::string nodeName, std::string portName, std::string value); std::string getOutPortValue(int nodeNumId, std::string portName);