traverso-commit
[Top][All Lists]
Advanced

[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;
        }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]