[BACK]Return to dev.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / sndiod

Diff for /src/usr.bin/sndiod/dev.c between version 1.33 and 1.34

version 1.33, 2018/06/26 07:09:38 version 1.34, 2018/06/26 07:10:59
Line 1874 
Line 1874 
                 s->pstate = SLOT_READY;                  s->pstate = SLOT_READY;
                 slot_ready(s);                  slot_ready(s);
         }          }
   
           if (s->tstate != MMC_OFF)
                   s->tstate = MMC_STOP;
   
         if (s->mode & MODE_RECMASK)          if (s->mode & MODE_RECMASK)
                 abuf_done(&s->sub.buf);                  abuf_done(&s->sub.buf);
         if (s->pstate == SLOT_READY) {  
           if (s->pstate == SLOT_RUN) {
                   if (s->mode & MODE_PLAY) {
                           /*
                            * Don't detach, dev_cycle() will do it for us
                            * when the buffer is drained.
                            */
                           s->pstate = SLOT_STOP;
                           return;
                   }
                   slot_detach(s);
           } else {
 #ifdef DEBUG  #ifdef DEBUG
                 if (log_level >= 3) {                  if (log_level >= 3) {
                         slot_log(s);                          slot_log(s);
                         log_puts(": not drained (blocked by mmc)\n");                          log_puts(": not drained (blocked by mmc)\n");
                 }                  }
 #endif  #endif
                 if (s->mode & MODE_PLAY)  
                         abuf_done(&s->mix.buf);  
                 s->ops->eof(s->arg);  
                 s->pstate = SLOT_INIT;  
         } else {  
                 /* s->pstate == SLOT_RUN */  
                 if (s->mode & MODE_PLAY)  
                         s->pstate = SLOT_STOP;  
                 else {  
                         slot_detach(s);  
                         s->pstate = SLOT_INIT;  
                         s->ops->eof(s->arg);  
                 }  
         }          }
         if (s->tstate != MMC_OFF)          if (s->mode & MODE_PLAY)
                 s->tstate = MMC_STOP;                  abuf_done(&s->mix.buf);
           s->pstate = SLOT_INIT;
           s->ops->eof(s->arg);
 }  }
   
 void  void

Legend:
Removed from v.1.33  
changed lines
  Added in v.1.34