summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornaga <naga@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-04-12 23:30:19 +0000
committernaga <naga@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-04-12 23:30:19 +0000
commitaa2a60f518621b6ef984febdb7c73fa3d704e86f (patch)
treef6573ae65981e21e3a91b85464b8c929d5076a56
parentf0c15c97148c14e29a8f98aa37ac067fd15cb83e (diff)
downloadATCD-aa2a60f518621b6ef984febdb7c73fa3d704e86f.tar.gz
*** empty log message ***
-rw-r--r--TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.cpp25
-rw-r--r--TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.h11
-rw-r--r--TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/ctr.cpp24
3 files changed, 42 insertions, 18 deletions
diff --git a/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.cpp b/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.cpp
index 16e42e628a2..333e80782e8 100644
--- a/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.cpp
@@ -13,6 +13,12 @@ Command_Handler::Command_Handler (ACE_HANDLE command_handle)
{
}
+Command_Handler::~Command_Handler (void)
+{
+ ACE_Reactor::instance ()->remove_handler (this,
+ ACE_Event_Handler::READ_MASK);
+}
+
int
Command_Handler::init (void)
{
@@ -1383,6 +1389,14 @@ Client_Sig_Handler::Client_Sig_Handler (Command_Handler *command_handler)
{
}
+Client_Sig_Handler::~Client_Sig_Handler (void)
+{
+ ACE_Reactor::instance ()->remove_handler (this,
+ ACE_Event_Handler::NULL_MASK);
+
+ ACE_Reactor::instance ()->remove_handler (this->sig_set);
+}
+
int
Client_Sig_Handler::register_handler (void)
{
@@ -1404,13 +1418,12 @@ Client_Sig_Handler::register_handler (void)
-1);
// Create a sigset_t corresponding to the signals we want to catch.
- ACE_Sig_Set sig_set;
- sig_set.sig_add (SIGINT);
- sig_set.sig_add (SIGQUIT);
- sig_set.sig_add (SIGALRM);
- sig_set.sig_add (SIGUSR1);
- sig_set.sig_add (SIGUSR2);
+ this->sig_set.sig_add (SIGINT);
+ this->sig_set.sig_add (SIGQUIT);
+ this->sig_set.sig_add (SIGALRM);
+ this->sig_set.sig_add (SIGUSR1);
+ this->sig_set.sig_add (SIGUSR2);
// Register the signal handler object to catch the signals.
if (ACE_Reactor::instance ()->register_handler (sig_set,
diff --git a/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.h b/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.h
index 10d36c8b05c..e8f2cefc39d 100644
--- a/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.h
+++ b/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.h
@@ -52,6 +52,9 @@ public:
Command_Handler (ACE_HANDLE command_handle);
// Construct this handler with a control (UNIX) handle
+ ~Command_Handler (void);
+ // Destructor
+
int init (void);
// initialize the ORB
@@ -137,6 +140,9 @@ public:
Client_Sig_Handler (Command_Handler *command_handler);
// We need the command handler to call close ()
+ ~Client_Sig_Handler (void);
+ // Destructor
+
virtual ACE_HANDLE get_handle (void) const;
int register_handler (void);
@@ -158,7 +164,10 @@ public:
private:
ACE_HANDLE handle_;
// dummy handle for the sig handler.
-
+
+ ACE_Sig_Set sig_set;
+ // the signal set
+
Command_Handler *command_handler_;
// We need the command handler to call close ()
diff --git a/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/ctr.cpp b/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/ctr.cpp
index b84cdd32ce3..0c9fa5b3197 100644
--- a/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/ctr.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/ctr.cpp
@@ -2972,31 +2972,33 @@ int CTRmain(void)
// instantiate our command handler
- Command_Handler *command_handler;
- ACE_NEW_RETURN (command_handler,
- Command_Handler (cmdSocket),
- -1);
+ Command_Handler command_handler (cmdSocket);
+// ACE_NEW_RETURN (command_handler,
+// Command_Handler (cmdSocket),
+// -1);
- if (command_handler->init () == -1)
+ // if (command_handler->init () == -1)
+ if (command_handler.init () == -1)
ACE_ERROR_RETURN ((LM_ERROR,
"(%P|%t) command_handler: init returned -1"),
-1);
// .. and register it with the reactor.
- if (ACE_Reactor::instance ()->register_handler (command_handler,
+ if (ACE_Reactor::instance ()->register_handler (&command_handler,
ACE_Event_Handler::READ_MASK) == -1)
ACE_ERROR_RETURN ((LM_ERROR,
"(%P|%t) register_handler for command_handler failed\n"),
-1);
// and now instantiate the sig_handler
- Client_Sig_Handler *client_sig_handler;
- ACE_NEW_RETURN (client_sig_handler,
- Client_Sig_Handler (command_handler),
- -1);
+ Client_Sig_Handler client_sig_handler (&command_handler);
+// Client_Sig_Handler *client_sig_handler;
+// ACE_NEW_RETURN (client_sig_handler,
+// Client_Sig_Handler (command_handler),
+// -1);
// .. and ask it to register itself with the reactor
- if (client_sig_handler->register_handler () < 0)
+ if (client_sig_handler.register_handler () < 0)
ACE_ERROR_RETURN ((LM_ERROR,
"(%P|%t) register_handler for sig_handler failed\n"),
-1);