Guest User

Untitled

a guest
Mar 22nd, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.72 KB | None | 0 0
  1. diff --git a/audio/audio_driver.c b/audio/audio_driver.c
  2. index bc2231c76e..ab0f0bd73c 100644
  3. --- a/audio/audio_driver.c
  4. +++ b/audio/audio_driver.c
  5. @@ -739,6 +739,8 @@ size_t audio_driver_sample_batch(const int16_t *data, size_t frames)
  6. **/
  7. void audio_driver_sample_rewind(int16_t left, int16_t right)
  8. {
  9. + if (audio_driver_rewind_ptr == 0)
  10. + return;
  11. audio_driver_rewind_buf[--audio_driver_rewind_ptr] = right;
  12. audio_driver_rewind_buf[--audio_driver_rewind_ptr] = left;
  13. }
  14. @@ -762,7 +764,10 @@ size_t audio_driver_sample_batch_rewind(const int16_t *data, size_t frames)
  15. size_t samples = frames << 1;
  16.  
  17. for (i = 0; i < samples; i++)
  18. - audio_driver_rewind_buf[--audio_driver_rewind_ptr] = data[i];
  19. + {
  20. + if (audio_driver_rewind_ptr > 0)
  21. + audio_driver_rewind_buf[--audio_driver_rewind_ptr] = data[i];
  22. + }
  23.  
  24. return frames;
  25. }
  26. @@ -842,17 +847,18 @@ void audio_driver_monitor_adjust_system_rates(void)
  27. void audio_driver_setup_rewind(void)
  28. {
  29. unsigned i;
  30. -
  31. /* Push audio ready to be played. */
  32. audio_driver_rewind_ptr = audio_driver_rewind_size;
  33.  
  34. for (i = 0; i < audio_driver_data_ptr; i += 2)
  35. {
  36. - audio_driver_rewind_buf[--audio_driver_rewind_ptr] =
  37. - audio_driver_output_samples_conv_buf[i + 1];
  38. + if (audio_driver_rewind_ptr > 0)
  39. + audio_driver_rewind_buf[--audio_driver_rewind_ptr] =
  40. + audio_driver_output_samples_conv_buf[i + 1];
  41.  
  42. - audio_driver_rewind_buf[--audio_driver_rewind_ptr] =
  43. - audio_driver_output_samples_conv_buf[i + 0];
  44. + if (audio_driver_rewind_ptr > 0)
  45. + audio_driver_rewind_buf[--audio_driver_rewind_ptr] =
  46. + audio_driver_output_samples_conv_buf[i + 0];
  47. }
  48.  
  49. audio_driver_data_ptr = 0;
Add Comment
Please, Sign In to add comment