[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-datatype-cvs
Subject:    [Datatype-cvs] wm/fileformat asf_file_format_file.cpp, 1.5.4.7,
From:       shivnani () helixcommunity ! org
Date:       2008-11-24 17:20:52
Message-ID: 200811241729.mAOHTMtr030388 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/datatype/wm/fileformat
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv14333

Modified Files:
      Tag: hxclient_2_1_0_cayennes
	asf_file_format_file.cpp 
Log Message:
Modified by:  ext-amit.shivnani@nokia.com

Reviewed by: 

Date: Nov-11-2008

Project: SymbianMmf

     TSWId: : 409-794

Synopsis:  Enabling TrickPlay support for 9.1
				
Fix:A configurability approach is devised to give Trick Play support in helix for sdk \
9.1 and onwards and at the sametime maintaining backward compatability in 5.0 sdk  
Files Modified:
\build\umakepf\helix-client-s60-50-common.pfi
\build\umake\umake_symbianmmp.py
\build\umakecf\symbian-plat-sec.cf
\datatype\mdf\video\renderer\mdfdevice\server\CMDFDevVideoServerSession.h
\datatype\mdf\video\renderer\mdfdevice\server\CMDFDevVideoServerSession.cpp
\datatype\mdf\video\renderer\mdfvidrend.cpp
\datatype\mdf\video\renderer\mdfdevice\client\CMDFDevVideoClient.cpp
\datatype\mdf\video\renderer\mdfdevice\client\CMDFDevVideoClient.h
\datatype\wm\fileformat\asf_file_format_file.cpp


New files added:None.

Image Size and Heap Use impact: no major impact

Module Release testing (STIF) :  Passed.
		
	     Branch : 210cays and Head



Index: asf_file_format_file.cpp
===================================================================
RCS file: /cvsroot/datatype/wm/fileformat/asf_file_format_file.cpp,v
retrieving revision 1.5.4.7
retrieving revision 1.5.4.8
diff -u -d -r1.5.4.7 -r1.5.4.8
--- asf_file_format_file.cpp	16 Jul 2008 18:16:25 -0000	1.5.4.7
+++ asf_file_format_file.cpp	24 Nov 2008 17:20:50 -0000	1.5.4.8
@@ -524,7 +524,7 @@
                 }
                 while (bPacketSent && AnyStreamsPending());
                 // Do we have any packets on any queue?
-                if (bCheckToRead && !AnyPacketsToDeliver())
+                if (bCheckToRead && !AnyPacketsToDeliver() && AnyStreamsPending())
                 {
                     // Have we read all the packets in the data object?
                     if (m_ullPacketIndex >= m_pDataObject->m_ullTotalDataPackets)
@@ -955,9 +955,7 @@
             {
                 // Reset the state back to ready
                 m_ulState = kStateReady;
-                // Do we have any packets to deliver?
-                if (AnyPacketsToDeliver())
-                {
+
                     // Clear the flag saying we sent a packet
                     HXBOOL bPacketSent  = FALSE;
                     HXBOOL bCheckToRead = TRUE;
@@ -983,16 +981,24 @@
                         m_ulState = kStateReady;
                     }
                     while (bPacketSent && AnyStreamsPending());
+                // Do we have any packets on any queue?
+                if (bCheckToRead && !AnyPacketsToDeliver())
+                {
+                    // Have we read all the packets in the data object?
+                    if (m_ullPacketIndex >= m_pDataObject->m_ullTotalDataPackets)
+                    {
+                        // We have read all the packets in the data object,
+                        // so we cannot read any more. Therefore, we
+                        // should issue StreamDone()'s on all the streams
+                        TerminateAllStreams();
                 }
                 else
                 {
                     // We don't have any packets queued on any stream
-                    // Do any streams have pending requests?
-                    if (AnyStreamsPending())
-                    {
+                        //
                         // Set the state
                         m_ulState = kStateGPReadDonePending;
-                        // Log info on the packet read
+                        // Read a packet
                         HXLOGL4(HXLOG_ASFF, "\tCASFFileFormatFile::ReadDone() - \
reading ASF packet %I64u", m_ullPacketIndex);  // Read another packet
                         \
m_pFileObject->Read(m_pFilePropertiesObject->m_ulMaxDataPacketSize);


_______________________________________________
Datatype-cvs mailing list
Datatype-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/datatype-cvs


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic