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

List:       helix-clientapps-cvs
Subject:    [Clientapps-cvs] symbianMmf hxmmfstatectrl.cpp,1.32.12.1,1.32.12.2
From:       dexter_helix () helixcommunity ! org
Date:       2010-01-15 3:35:47
Message-ID: 201001150334.o0F3YIde030423 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/clientapps/symbianMmf
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv25419

Modified Files:
      Tag: hxclient_4_2_0_brizo
	hxmmfstatectrl.cpp 
Log Message:
"Nokia submits this code under the terms of a commercial contribution agreement with \
RealNetworks, and I am authorized to contribute this code under said agreement."  
Modified by:  ext-debashis.2.panigrahi@nokia.com
 
Reviewed by:  Ashish.As.Gupta@nokia.com
              ehyche@real.com
 
TSW Id: EHPE-7YKS2A
 
Date: 01/15/2010
	 
Project: SymbianMmf_wm
 
Synopsis: For Fusion's playback from last played position, need a way to set position \
before Prepare.  
Overview:
Requirement to cache and set the position if its being called before calling Prepare. \


Fix:
If duration is not set (before Prepare) then calling set position just to cache the \
position at state controller in the variable "m_posSetBefPrepare". After Prepare \
completes calling set position internally, only if "m_posSetBefPrepare" is set, then \
afterwards setting it to zero . 

Files modified & changes:
/clientapps/symbianMmf/hxmmfstatectrl.h
/clientapps/symbianMmf/hxmmfstatectrl.cpp
/clientapps/symbianMmf/common/hxmmfbasectrl.cpp

Image Size and Heap Use impact: No major impact
 
Module Release testing (STIF) : Passed
 
Test case(s) Added  : No

Memory leak check performed : Passed, No additional leaks introduced.
 
Platforms and Profiles Build Verified: helix-client-s60-50-mmf-mdf-dsp
 
Platforms and Profiles Functionality verified: armv5, winscw
 
Branch: 420Brizo, 210CayS and HEAD 


Index: hxmmfstatectrl.cpp
===================================================================
RCS file: /cvsroot/clientapps/symbianMmf/hxmmfstatectrl.cpp,v
retrieving revision 1.32.12.1
retrieving revision 1.32.12.2
diff -u -d -r1.32.12.1 -r1.32.12.2
--- hxmmfstatectrl.cpp	9 Nov 2009 09:25:01 -0000	1.32.12.1
+++ hxmmfstatectrl.cpp	15 Jan 2010 03:35:42 -0000	1.32.12.2
@@ -188,6 +188,7 @@
     TInt lError;
 
     m_posLength = 0;
+    m_posSetBefPrepare = 0;
     m_percentComplete = 0;
     m_firstBuffer = TRUE;
     lError = m_pCurrentState->OnStop();
@@ -433,6 +434,7 @@
 {
     TInt lRetval = KErrArgument;
     m_posLength = 0;
+    m_posSetBefPrepare = 0;
     m_percentComplete = 0;
 
     if((pObs != NULL) && (pContext != NULL))
@@ -602,6 +604,12 @@
     if ( m_pObserver )
         m_pObserver->OnPrepareComplete();
     
+    // Internally calling SetPosition if it has been called before prepare. 
+    if (m_posSetBefPrepare > 0 && m_posSetBefPrepare < m_duration)
+    {
+       SetPosition(m_posSetBefPrepare);
+       m_posSetBefPrepare = 0;
+    }
     QueryInterface(IID_IHXRegistry, (void **) &m_pRegistry);
     if(m_pRegistry)
     {
@@ -737,6 +745,11 @@
     else
     {
         HXLOGL2(HXLOG_SMMF, "HXMMFStateCtrl::SetPosition(%u) m_posLength=%u", \
newPos, m_posLength); +        // If SetPosition is called before prepare we have to \
cache the position +        if( m_pCurrentState == m_pClosed)
+        {
+            m_posSetBefPrepare = newPos;
+        }
         m_posLength = newPos;
         lError = m_pCurrentState->SetPosition(newPos);
     }


_______________________________________________
Clientapps-cvs mailing list
Clientapps-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/clientapps-cvs


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

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