--- C:/src/apache-activemq-4.1.1/src/activemq-core/src/main/java/org/apache/activemq/thread/Scheduler.java Fri Mar 23 13:39:46 2007 +++ C:/src/apache-activemq-4.1.1-local/src/activemq-core/src/main/java/org/apache/activemq/thread/Scheduler.java Tue Apr 24 16:52:37 2007 @@ -19,6 +19,7 @@ import java.util.HashMap; +import edu.emory.mathcs.backport.java.util.concurrent.RunnableScheduledFuture; import edu.emory.mathcs.backport.java.util.concurrent.ScheduledFuture; import edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor; import edu.emory.mathcs.backport.java.util.concurrent.ThreadFactory; @@ -52,7 +53,8 @@ ScheduledFuture ticket = (ScheduledFuture) clockTickets.remove(task); if( ticket!=null ) { ticket.cancel(false); - clockDaemon.remove(task); + if (ticket instanceof RunnableScheduledFuture) + clockDaemon.remove((RunnableScheduledFuture) ticket); } }