[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[certi-cvs] certi/RTIA RTIA.cc FederationManagement.cc Fede...
From: |
certi-cvs |
Subject: |
[certi-cvs] certi/RTIA RTIA.cc FederationManagement.cc Fede... |
Date: |
Sun, 11 Oct 2009 11:22:56 +0000 |
CVSROOT: /sources/certi
Module name: certi
Changes by: Eric NOULARD <erk> 09/10/11 11:22:56
Modified files:
RTIA : RTIA.cc FederationManagement.cc
FederationManagement.hh
Log message:
Merge-in
patch #6937: Fix crash on exit of rtia
Added FIXME comment for the record.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/RTIA.cc?cvsroot=certi&r1=3.27&r2=3.28
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/FederationManagement.cc?cvsroot=certi&r1=3.73&r2=3.74
http://cvs.savannah.gnu.org/viewcvs/certi/RTIA/FederationManagement.hh?cvsroot=certi&r1=3.24&r2=3.25
Patches:
Index: RTIA.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/RTIA.cc,v
retrieving revision 3.27
retrieving revision 3.28
diff -u -b -r3.27 -r3.28
--- RTIA.cc 21 Sep 2009 15:42:11 -0000 3.27
+++ RTIA.cc 11 Oct 2009 11:22:55 -0000 3.28
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: RTIA.cc,v 3.27 2009/09/21 15:42:11 erk Exp $
+// $Id: RTIA.cc,v 3.28 2009/10/11 11:22:55 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -75,6 +75,13 @@
}
}
+ /*
+ * FIXME Erk
+ * this is may be a design issue
+ * see https://savannah.nongnu.org/patch/?6937
+ */
+ fm->resignFederationExecutionForTermination();
+
/* delete objects in reverse order just like generated destructor would
have done */
delete ddm ;
delete tm ;
@@ -187,4 +194,4 @@
}} // namespace certi/rtia
-// $Id: RTIA.cc,v 3.27 2009/09/21 15:42:11 erk Exp $
+// $Id: RTIA.cc,v 3.28 2009/10/11 11:22:55 erk Exp $
Index: FederationManagement.cc
===================================================================
RCS file: /sources/certi/certi/RTIA/FederationManagement.cc,v
retrieving revision 3.73
retrieving revision 3.74
diff -u -b -r3.73 -r3.74
--- FederationManagement.cc 21 Sep 2009 15:42:11 -0000 3.73
+++ FederationManagement.cc 11 Oct 2009 11:22:55 -0000 3.74
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: FederationManagement.cc,v 3.73 2009/09/21 15:42:11 erk Exp $
+// $Id: FederationManagement.cc,v 3.74 2009/10/11 11:22:55 erk Exp $
// ----------------------------------------------------------------------------
#include <config.h>
@@ -78,13 +78,8 @@
//! Destructor.
FederationManagement::~FederationManagement()
{
- TypeException e ;
G.Out(pdGendoc,"enter ~FederationManagement");
- if (_est_membre_federation) {
- resignFederationExecution(RTI::DELETE_OBJECTS, e);
- }
-
// BUG: On devrait pouvoir quitter une federation que l'on a cree
// sans la detruire en partant.
// a-t-on avertit les autres federes de notre depart et donc
@@ -478,6 +473,20 @@
}
}
+// Resigns if we are still member, call this before we throw away all the rtia
members
+void
+FederationManagement::resignFederationExecutionForTermination()
+{
+ G.Out(pdGendoc,"enter
FederationManagement::resignFederationExecutionForTermination");
+
+ if (_est_membre_federation) {
+ TypeException e ;
+ resignFederationExecution(RTI::DELETE_OBJECTS, e);
+ }
+
+ G.Out(pdGendoc,"exit
FederationManagement::resignFederationExecutionForTermination");
+}
+
// ----------------------------------------------------------------------------
//! Register synchronization.
void
Index: FederationManagement.hh
===================================================================
RCS file: /sources/certi/certi/RTIA/FederationManagement.hh,v
retrieving revision 3.24
retrieving revision 3.25
diff -u -b -r3.24 -r3.25
--- FederationManagement.hh 10 Jun 2008 13:41:44 -0000 3.24
+++ FederationManagement.hh 11 Oct 2009 11:22:55 -0000 3.25
@@ -18,7 +18,7 @@
// along with this program ; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// $Id: FederationManagement.hh,v 3.24 2008/06/10 13:41:44 rousse Exp $
+// $Id: FederationManagement.hh,v 3.25 2009/10/11 11:22:55 erk Exp $
// ----------------------------------------------------------------------------
#ifndef _CERTI_RTIA_FEDERATION_MANAGEMENT
@@ -57,6 +57,7 @@
void resignFederationExecution(RTI::ResignAction action,
TypeException &e);
+ void resignFederationExecutionForTermination();
// Synchronization.
void registerSynchronization(std::string label,
@@ -123,4 +124,4 @@
#endif // _CERTI_RTIA_FEDERATION_MANAGEMENT
-// $Id: FederationManagement.hh,v 3.24 2008/06/10 13:41:44 rousse Exp $
+// $Id: FederationManagement.hh,v 3.25 2009/10/11 11:22:55 erk Exp $
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [certi-cvs] certi/RTIA RTIA.cc FederationManagement.cc Fede...,
certi-cvs <=