diff options
Diffstat (limited to 'firmware/pcm_record.c')
-rw-r--r-- | firmware/pcm_record.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/firmware/pcm_record.c b/firmware/pcm_record.c index f3cb21e491..a5d0e51c30 100644 --- a/firmware/pcm_record.c +++ b/firmware/pcm_record.c | |||
@@ -1358,7 +1358,6 @@ static void pcmrec_stop(void) | |||
1358 | if (is_recording) | 1358 | if (is_recording) |
1359 | { | 1359 | { |
1360 | dma_lock = true; /* lock dma write position */ | 1360 | dma_lock = true; /* lock dma write position */ |
1361 | queue_reply(&pcmrec_queue, 0); | ||
1362 | 1361 | ||
1363 | /* flush all available data first to avoid overflow while waiting | 1362 | /* flush all available data first to avoid overflow while waiting |
1364 | for encoding to finish */ | 1363 | for encoding to finish */ |
@@ -1519,15 +1518,11 @@ static void pcmrec_thread(void) | |||
1519 | if (is_recording) | 1518 | if (is_recording) |
1520 | break; | 1519 | break; |
1521 | pcmrec_close(); | 1520 | pcmrec_close(); |
1522 | /* Be sure other threads are released if waiting */ | ||
1523 | queue_clear(&pcmrec_queue); | ||
1524 | flush_interrupts = 0; | ||
1525 | usb_acknowledge(SYS_USB_CONNECTED_ACK); | 1521 | usb_acknowledge(SYS_USB_CONNECTED_ACK); |
1526 | usb_wait_for_disconnect(&pcmrec_queue); | 1522 | usb_wait_for_disconnect(&pcmrec_queue); |
1523 | flush_interrupts = 0; | ||
1527 | break; | 1524 | break; |
1528 | } /* end switch */ | 1525 | } /* end switch */ |
1529 | |||
1530 | queue_reply(&pcmrec_queue, 0); | ||
1531 | } /* end while */ | 1526 | } /* end while */ |
1532 | } /* pcmrec_thread */ | 1527 | } /* pcmrec_thread */ |
1533 | 1528 | ||