gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ChangeLog server/asobj/NetStreamFfmpeg.cpp


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/asobj/NetStreamFfmpeg.cpp
Date: Thu, 08 May 2008 20:41:08 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/05/08 20:41:08

Modified files:
        .              : ChangeLog 
        server/asobj   : NetStreamFfmpeg.cpp 

Log message:
        use multithread_queue::clear rather then looping and using .pop/.size
        (clear would lock the mutex once).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.6560&r2=1.6561
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/NetStreamFfmpeg.cpp?cvsroot=gnash&r1=1.112&r2=1.113

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.6560
retrieving revision 1.6561
diff -u -b -r1.6560 -r1.6561
--- ChangeLog   8 May 2008 18:20:30 -0000       1.6560
+++ ChangeLog   8 May 2008 20:41:07 -0000       1.6561
@@ -1,5 +1,11 @@
 2008-05-08 Sandro Santilli <address@hidden>
 
+       * server/asobj/NetStreamFfmpeg.cpp: use multithread_queue::clear
+         rather then looping and using .pop/.size (clear would lock
+         the mutex once).
+
+2008-05-08 Sandro Santilli <address@hidden>
+
        * testsuite/misc-ming.all/Makefile.am: distribute empty.as
 
 2008-05-08 Sandro Santilli <address@hidden>

Index: server/asobj/NetStreamFfmpeg.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/NetStreamFfmpeg.cpp,v
retrieving revision 1.112
retrieving revision 1.113
diff -u -b -r1.112 -r1.113
--- server/asobj/NetStreamFfmpeg.cpp    8 May 2008 17:37:48 -0000       1.112
+++ server/asobj/NetStreamFfmpeg.cpp    8 May 2008 20:41:08 -0000       1.113
@@ -163,17 +163,8 @@
        delete m_unqueued_data;
        m_unqueued_data = NULL;
 
-       while (m_qvideo.size() > 0)
-       {
-               delete m_qvideo.front();
-               m_qvideo.pop();
-       }
-
-       while (m_qaudio.size() > 0)
-       {
-               delete m_qaudio.front();
-               m_qaudio.pop();
-       }
+       m_qvideo.clear();
+       m_qaudio.clear();
 
        delete [] ByteIOCxt.buffer;
 
@@ -693,6 +684,16 @@
                                        break;
                                }
                        }
+                       else
+                       {
+                               // TODO: sleep till any of the two queues
+                               //       falls under the given number
+                               //       (20 currently, but should be a class 
member really)
+                               //
+                               // NOTE: audio_streamer pops from m_qaudio and
+                               //       refreshVideoFrame pops from m_qvideo
+                               //
+                       }
 
                }
                else
@@ -1175,16 +1176,8 @@
        }
        
        // Flush the queues
-       while ( m_qvideo.size() > 0 ) 
-       {
-               delete m_qvideo.front();
-               m_qvideo.pop();
-       }
-       while ( m_qaudio.size() > 0 ) 
-       {
-               delete m_qaudio.front();
-               m_qaudio.pop();
-       }
+       m_qvideo.clear();
+       m_qaudio.clear();
 
 }
 




reply via email to

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