fix segv in ogg playback, add db tx test
[goodguy/history.git] / cinelerra-5.1 / cinelerra / fileogg.C
index 747fa399948617866f79ee3daecd96a825f075b5..6c789b39100fd14c3e21c03708157b894c575588 100644 (file)
@@ -1577,9 +1577,12 @@ int FileOGG::set_audio_position(int64_t x)
 
 int FileOGG::move_history(int from, int to, int len)
 {
-       for(int i = 0; i < asset->channels; i++)
-               memmove(pcm_history[i] + to, pcm_history[i] + from, sizeof(float) * len);
+       if( len > 0 ) {
+               for(int i = 0; i < asset->channels; i++)
+                       memmove(pcm_history[i] + to, pcm_history[i] + from, sizeof(float) * len);
+       }
        history_start = history_start + from - to;
+       if( history_start < 0 ) history_start = 0;
        return 0;
 }