 							hostVo.ip = ip;
 							hostVo.isConnected = false;
 							result = StringUtil.substitute("[TIMEOUT] {0} : {1}", ip, obj["message"]);
+							runningIPList.removeItemAt(runningIPList.getItemIndex(hostVo.ip));
 							event = new MultiSSHEvent(MultiSSHEvent.TIMEOUT, result, hostVo);
 							break;
 						}

			trace(data);
			
			var event:MultiSSHEvent = null;
			
			if(!data || !StringUtil.trim(data))
			{

			} 
			catch(error:Error) 
			{
				if(hostVo && hostVo.ip)
				{
					ip = hostVo.ip;
					var idx:int = runningIPList.getItemIndex(ip);
					
					if(idx >= 0 && idx < runningIPList.length)
					{
						runningIPList.removeItemAt(runningIPList.getItemIndex(idx));
					}
				}

				event = new MultiSSHEvent(MultiSSHEvent.EXCEPTION, error.name + " : " + error.message);
			}
		}
