diff options
author | Matthew Newhook <matthew@zeroc.com> | 2006-06-28 15:50:28 +0000 |
---|---|---|
committer | Matthew Newhook <matthew@zeroc.com> | 2006-06-28 15:50:28 +0000 |
commit | 2c17b9664a0894e9061a7e4b942e560d9325580d (patch) | |
tree | aa5ea77377ada4b070255d56f92a2c2d5323786a /cpp/src/FreezeScript/DumpDescriptors.cpp | |
parent | fix for removal of removeObjectFactory in bug 472 (diff) | |
download | ice-2c17b9664a0894e9061a7e4b942e560d9325580d.tar.bz2 ice-2c17b9664a0894e9061a7e4b942e560d9325580d.tar.xz ice-2c17b9664a0894e9061a7e4b942e560d9325580d.zip |
bug 1149
Diffstat (limited to 'cpp/src/FreezeScript/DumpDescriptors.cpp')
-rw-r--r-- | cpp/src/FreezeScript/DumpDescriptors.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/cpp/src/FreezeScript/DumpDescriptors.cpp b/cpp/src/FreezeScript/DumpDescriptors.cpp index e9335efd8e9..042baabfed3 100644 --- a/cpp/src/FreezeScript/DumpDescriptors.cpp +++ b/cpp/src/FreezeScript/DumpDescriptors.cpp @@ -1238,10 +1238,12 @@ FreezeScript::RecordDescriptor::RecordDescriptor(const DescriptorPtr& parent, in const DataFactoryPtr& factory, const ErrorReporterPtr& errorReporter, const IceXML::Attributes& attributes, - const Slice::UnitPtr& unit) : + const Slice::UnitPtr& unit, + const FreezeScript::ObjectFactoryPtr& objectFactory) : Descriptor(parent, line, factory, errorReporter), ExecutableContainerDescriptor(parent, line, factory, errorReporter, attributes, "record"), - _unit(unit) + _unit(unit), + _objectFactory(objectFactory) { } @@ -1251,7 +1253,7 @@ FreezeScript::RecordDescriptor::execute(const SymbolTablePtr& sym, ExecuteInfo* // // Temporarily add an object factory. // - info->communicator->addObjectFactory(new FreezeScript::ObjectFactory(_factory, _unit), ""); + _objectFactory->activate(_factory, _unit); // // Iterate over the database. @@ -1320,6 +1322,7 @@ FreezeScript::RecordDescriptor::execute(const SymbolTablePtr& sym, ExecuteInfo* { dbc->close(); } + _objectFactory->deactivate(); throw; } @@ -1327,6 +1330,7 @@ FreezeScript::RecordDescriptor::execute(const SymbolTablePtr& sym, ExecuteInfo* { dbc->close(); } + _objectFactory->deactivate(); } // |