[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Traverso-commit] traverso/src/core Song.cpp
From: |
Remon Sijrier |
Subject: |
[Traverso-commit] traverso/src/core Song.cpp |
Date: |
Wed, 04 Apr 2007 10:09:22 +0000 |
CVSROOT: /sources/traverso
Module name: traverso
Changes by: Remon Sijrier <r_sijrier> 07/04/04 10:09:22
Modified files:
src/core : Song.cpp
Log message:
if a seek was started, return without processing in Song::process()
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Song.cpp?cvsroot=traverso&r1=1.76&r2=1.77
Patches:
Index: Song.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/Song.cpp,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -b -r1.76 -r1.77
--- Song.cpp 4 Apr 2007 09:19:18 -0000 1.76
+++ Song.cpp 4 Apr 2007 10:09:22 -0000 1.77
@@ -520,8 +520,10 @@
resumeTransport = true;
}
+ // only sets a boolean flag, save to call.
m_diskio->prepare_for_seek();
+ // 'Tell' the diskio it should start a seek action.
if (!transport) {
emit seekStart(newTransportFramePos);
} else {
@@ -724,8 +726,9 @@
{
// If no need for playback/record, return.
// printf("Song-%d::process transport is %d\n", m_id, transport);
- if (!transport)
+ if (!transport) {
return 0;
+ }
if (stopTransport) {
RT_THREAD_EMIT(this, 0, transferStopped());
@@ -736,6 +739,11 @@
return 0;
}
+ if (seeking) {
+ start_seek();
+ return 0;
+ }
+
// zero the m_masterOut buffers
m_masterOut->silence_buffers(nframes);
@@ -749,11 +757,6 @@
// update the transportFrame
transportFrame += nframes;
- if (seeking) {
- start_seek();
- }
-
-
if (!processResult) {
return 0;
}