Shutdown CORBA bug

[Apologies for posting here, this was submitted to bugzilla but seems to
have gotten lost]

The CORBA code in RTT 1.10.2 (unsuccessfully) attempts to remove
ControlTasks from the CORBA naming service after the orb has been
shutdown. This is most readily seen by using the CORBA deployer which,
on quitting, complains about not being able to unbind, e.g.:

2.105 [ Warning][DestroyOrb] ControlTask 'Foo' unbinding failed from
CORBA Naming Service.
2.105 [ Warning][DestroyOrb] Cleanup done.

And subsequently starting up the CORBA deployer (without restarting the
CORBA naming service) complains:

0.044 [ Warning][deployer-corba-gnulinux::main()] ControlTask 'Foo'
already bound to CORBA Naming Service.
0.044 [ Warning][deployer-corba-gnulinux::main()] Trying to rebind...
done. New ControlTask bound to Naming Service.

This causes worse problems if an attach is attempted to this orphan
CORBA object.

This can be resolved by moving the CleanupServers() line slightly
earlier in the shutdown process:

--- orocos-rtt-1.10.2/src/corba/ControlTaskServer.orig.cpp
2009-08-20 07:28:57.000000000 -0700
+++ orocos-rtt-1.10.2/src/corba/ControlTaskServer.cpp 2010-01-22
15:47:51.760068805 -0800
@@ -244,6 +244,7 @@
}

try {
+ CleanupServers();
log(Info) << "Orb Shutdown...";
if (wait_for_completion)
log(Info)<<"waiting..."<<endlog();
@@ -336,7 +337,6 @@
try {
// Destroy the POA, waiting until the destruction
terminates
//poa->destroy (1, 1);
- CleanupServers();
orb->destroy();
log(Info) <<"Orb destroyed."<<endlog();

This may be related to bug 429
(https://www.fmtc.be/bugzilla/orocos/show_bug.cgi?id=429)