summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorMatthew Newhook <matthew@zeroc.com>2008-03-26 13:06:39 +0800
committerMatthew Newhook <matthew@zeroc.com>2008-03-26 13:06:39 +0800
commit9093525b25932830ba713b334d5f8785d36a1341 (patch)
tree52b4a176a071c4206e1c0e9438b6595469ef1e3b /cpp/src
parentbug 2873 - IceStorm::Service -> IceStormInternal::Service. (diff)
downloadice-9093525b25932830ba713b334d5f8785d36a1341.tar.bz2
ice-9093525b25932830ba713b334d5f8785d36a1341.tar.xz
ice-9093525b25932830ba713b334d5f8785d36a1341.zip
bug 2810 - dumpdb output goes to stderr.
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/FreezeScript/DumpDB.cpp2
-rw-r--r--cpp/src/FreezeScript/DumpDescriptors.cpp13
-rw-r--r--cpp/src/FreezeScript/DumpDescriptors.h3
3 files changed, 9 insertions, 9 deletions
diff --git a/cpp/src/FreezeScript/DumpDB.cpp b/cpp/src/FreezeScript/DumpDB.cpp
index 676e3d0fd36..3c79c5cf007 100644
--- a/cpp/src/FreezeScript/DumpDB.cpp
+++ b/cpp/src/FreezeScript/DumpDB.cpp
@@ -849,7 +849,7 @@ FreezeScript::DescriptorHandler::startElement(const string& name, const IceXML::
_errorReporter->descriptorError("<echo> cannot be a top-level element", line);
}
- d = new EchoDescriptor(_current, line, _factory, _errorReporter, attributes);
+ d = new EchoDescriptor(_current, line, _factory, _errorReporter, attributes, cout);
}
else if(name == "if")
{
diff --git a/cpp/src/FreezeScript/DumpDescriptors.cpp b/cpp/src/FreezeScript/DumpDescriptors.cpp
index 98f95eff7ff..166ef33d4b6 100644
--- a/cpp/src/FreezeScript/DumpDescriptors.cpp
+++ b/cpp/src/FreezeScript/DumpDescriptors.cpp
@@ -862,8 +862,9 @@ FreezeScript::FailDescriptor::execute(const SymbolTablePtr& sym, ExecuteInfo*)
//
FreezeScript::EchoDescriptor::EchoDescriptor(const DescriptorPtr& parent, int line, const DataFactoryPtr& factory,
const ErrorReporterPtr& errorReporter,
- const IceXML::Attributes& attributes) :
- Descriptor(parent, line, factory, errorReporter)
+ const IceXML::Attributes& attributes,
+ ostream& os) :
+ Descriptor(parent, line, factory, errorReporter), _os(os)
{
IceXML::Attributes::const_iterator p;
@@ -902,11 +903,9 @@ FreezeScript::EchoDescriptor::execute(const SymbolTablePtr& sym, ExecuteInfo*)
{
DescriptorErrorContext ctx(_errorReporter, "echo", _line);
- ostream& out = _errorReporter->stream();
-
if(!_message.empty())
{
- out << _message;
+ _os << _message;
}
if(_value)
@@ -920,10 +919,10 @@ FreezeScript::EchoDescriptor::execute(const SymbolTablePtr& sym, ExecuteInfo*)
{
_errorReporter->error("evaluation of value `" + _valueStr + "' failed:\n" + ex.reason());
}
- printData(v, out);
+ printData(v, _os);
}
- out << endl;
+ _os << endl;
}
//
diff --git a/cpp/src/FreezeScript/DumpDescriptors.h b/cpp/src/FreezeScript/DumpDescriptors.h
index f46add3c604..f748da0bc3d 100644
--- a/cpp/src/FreezeScript/DumpDescriptors.h
+++ b/cpp/src/FreezeScript/DumpDescriptors.h
@@ -156,7 +156,7 @@ class EchoDescriptor : public Descriptor
public:
EchoDescriptor(const DescriptorPtr&, int, const DataFactoryPtr&, const ErrorReporterPtr&,
- const IceXML::Attributes&);
+ const IceXML::Attributes&, std::ostream&);
virtual void addChild(const DescriptorPtr&);
virtual void validate();
@@ -164,6 +164,7 @@ public:
private:
+ std::ostream& _os;
std::string _message;
NodePtr _value;
std::string _valueStr;