Debugger enters infinite loop when in a multiple Catch process
I have the following code in my server:
try
{
if ( queueFactory == null )
queueFactory = new ChannelFactory<ICompassQueueService>( "QueueHost" );
if ( queueAddress == null )
queueChannel = queueFactory.CreateChannel( );
else
queueChannel = queueFactory.CreateChannel( queueAddress );
( ( IClientChannel )queueChannel ).Open( );
}
catch ( EndpointNotFoundException epnf )
{
( ( IClientChannel )queueChannel ).Abort( );
throw new CommunicationException( "The server is not available at this time. Try again later.", epnf );
}
catch ( Exception ex )
{
( ( IClientChannel )queueChannel ).Abort( );
throw;
}
When I throw the CommunicationException, the debugger highlights the catch (Exception ex) block with a window that says CommunicationException not handled. When I hit PF11 (to continue execution) it just goes into an infinite loop highlighting the throw new CommunicationException then the catch (Exception) then the throw than the catch than the throw than the catch than ....
Visual Studio 2003 NEVER EVER did this.

