User: dmaplesden
  Date: 01/10/22 18:58:35

  Modified:    src/main/org/jboss/mq Tag: Branch_2_4
                        SpyMessageConsumer.java
  Log:
  Fixed race condition in receive mechanism, this time for message listeners.
  Also back ported fix for closing a message listener that is blocked waiting for 
message.
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.7.2.3   +8 -4      jbossmq/src/main/org/jboss/mq/SpyMessageConsumer.java
  
  Index: SpyMessageConsumer.java
  ===================================================================
  RCS file: /cvsroot/jboss/jbossmq/src/main/org/jboss/mq/SpyMessageConsumer.java,v
  retrieving revision 1.7.2.2
  retrieving revision 1.7.2.3
  diff -u -r1.7.2.2 -r1.7.2.3
  --- SpyMessageConsumer.java   2001/10/22 20:39:06     1.7.2.2
  +++ SpyMessageConsumer.java   2001/10/23 01:58:35     1.7.2.3
  @@ -25,7 +25,7 @@
    * @author     Hiram Chirino ([EMAIL PROTECTED])
    * @author     David Maplesden ([EMAIL PROTECTED])
    * @created    August 16, 2001
  - * @version    $Revision: 1.7.2.2 $
  + * @version    $Revision: 1.7.2.3 $
    */
   public class SpyMessageConsumer implements MessageConsumer, SpyConsumer, Runnable {
   
  @@ -319,9 +319,13 @@
            while ( true ) {
               //get Message
               while ( mes == null ) {
  -               mes = session.connection.receive( subscription, 0 );
  -               if ( mes == null ) {
  -                  synchronized ( messages ) {
  +               synchronized ( messages ) {
  +                  if ( closed ) {
  +                     waitingForMessage = false;
  +                     break outer;
  +                  }  
  +                  mes = session.connection.receive( subscription, 0 );
  +                  if ( mes == null ) {
                        waitingForMessage = true;
                        while ( messages.isEmpty() && !closed ) {
                           try {
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to