summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordengg <dengg@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-04-10 05:37:42 +0000
committerdengg <dengg@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-04-10 05:37:42 +0000
commit75f05573d0cd57491f3e1c7739a76a8ce4c9688b (patch)
tree74242f161e4e0052eccb840acdce0ff0ac2d99a6
parentbca0fe7d5ad39e1d3f9a6654bb4e00d6e8c94548 (diff)
downloadATCD-75f05573d0cd57491f3e1c7739a76a8ce4c9688b.tar.gz
Sat Apr 09 23:59:40 2005 Gan Deng <dengg@dre.vanderbilt.edu>
-rw-r--r--TAO/CIAO/ChangeLog10
-rw-r--r--TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.cpp13
2 files changed, 23 insertions, 0 deletions
diff --git a/TAO/CIAO/ChangeLog b/TAO/CIAO/ChangeLog
index 12e79aa17b4..12558511735 100644
--- a/TAO/CIAO/ChangeLog
+++ b/TAO/CIAO/ChangeLog
@@ -1,3 +1,13 @@
+Sat Apr 09 23:59:40 2005 Gan Deng <dengg@dre.vanderbilt.edu>
+
+ * DAnCE/DomainApplicationManager/Deployment_Configuration.cpp
+
+ Fixed a bug where duplicated CORBALOC specified in the
+ NodeManagerMap could cause undetected exception. This fix
+ will allow such duplication IOR error to be detected explicitly
+ and error message will be printed out. Thanks Steve Baker
+ <Steven_D_Baker@raytheon.com> for report this bug.
+
Fri Apr 8 14:30:52 CDT 2005 Will Otte <wotte@dre.vanderbilt.edu>
* DAnCE/Config_Handlers/cdp.cpp
diff --git a/TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.cpp b/TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.cpp
index 35d0d551668..a745b0cef60 100644
--- a/TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.cpp
+++ b/TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.cpp
@@ -34,10 +34,23 @@ CIAO::Deployment_Configuration::init (const char *filename)
char destination[NAME_BUFSIZE], ior[NAME_BUFSIZE];
+ ACE_Hash_Map_Manager_Ex<ACE_CString,
+ int,
+ ACE_Hash<ACE_CString>,
+ ACE_Equal_To<ACE_CString>,
+ ACE_Null_Mutex> check_ior_duplication;
+
int first = 1;
while (fscanf (inf, "%s %s", destination, ior ) != EOF)
{
+ if (check_ior_duplication.bind (ior, 0) == 1) // duplication found
+ {
+ ACE_DEBUG ((LM_ERROR, "(%P|%t) IOR of NodeManagers should be unique, "
+ "check your node manager map file.\n"));
+ return -1; // indicate "init" failed.
+ }
+
this->deployment_info_.bind (destination, ior);
if (first)