[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-datatype-cvs
Subject: [Datatype-cvs] avi/fileformat avistrm.cpp,1.22.4.8,1.22.4.9
From: shashikm () helixcommunity ! org
Date: 2010-05-25 16:27:57
Message-ID: 201005251628.o4PGSHpJ015576 () mailer ! progressive-comp ! com
[Download RAW message or body]
Update of /cvsroot/datatype/avi/fileformat
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv9466
Modified Files:
Tag: hxclient_4_2_0_brizo
avistrm.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-shashi.merapala@nokia.com
Reviewed by: ext-dushyant.vipradas@nokia.com, sfu@real.com
Date: 05/25/2010
Project: SymbianMmf_wm
Error Id: ESLM-85JG65
Synopsis: Video: Panic occurs when removing MMC during playing the MPEG4 (720p 25fps \
10Mbps) video
Overview: The panics occur in the following two cases which are independent of each \
other –
[1] In this case, the panic occurs during AVI file format destruction and \
specifically when calling CRIFFReader::Close(). This is because the mini file object \
is being released and destroyed prematurely. Due to this, the crash occurs when the \
close call on the mini file object is called. This scenario arises because when there \
is a read error, the reference to the mini file object is added but is not appended \
to the read queue. But a reference is later deleted from the queue which leaves the \
number of references one less. This causes the panic when CRIFFReader::Close() tries \
to call the close call on the mini file object. Changes have been made to properly \
add the mini file object to the read queue.
[2] In this case, the panic occurs due to calling operations on an invalid buffer. \
Changes have been made to include a check for a valid buffer.
Solution: Diffs attached
Files added: None
Files modified: \common\fileio\platform\symbian\hxdatasource_ccontent.cpp
\datatype\avi\fileformat\avistrm.cpp
Image size and heap use impact: None
Module release testing (STIF): Done. Passed.
Test case(s) added: No
Memory leak check performed: NA
Platforms and profiles build verified: helix-client-s60-52-mmf-mdf-dsp
Platforms and profiles functionality verified: armv5, winscw
Branch: 210CayS, HEAD, 420Brizo
Index: avistrm.cpp
===================================================================
RCS file: /cvsroot/datatype/avi/fileformat/avistrm.cpp,v
retrieving revision 1.22.4.8
retrieving revision 1.22.4.9
diff -u -d -r1.22.4.8 -r1.22.4.9
--- avistrm.cpp 21 May 2010 04:48:21 -0000 1.22.4.8
+++ avistrm.cpp 25 May 2010 16:27:55 -0000 1.22.4.9
@@ -2265,8 +2265,9 @@
result = HXR_FAIL;
}
}
- else
-#endif
+ else
+#endif
+ if(pBuffer)
{
HX_ASSERT(m_state == eChunkRead);
HX_ASSERT(CAVIFileFormat::GetStream(ENDIAN_SWAP_32(m_pReader->GetChunkType())) \
== m_usStream); @@ -2367,7 +2368,10 @@
m_pOuter->IOEvent();
}
-
+ else
+ {
+ result = HXR_FAIL;
+ }
if(FAILED(status) && FAILED(result))
{
CloseStream();
_______________________________________________
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