[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-protocol-cvs
Subject: [Protocol-cvs] transport/common/system/pub transbuf.h,1.14,1.15
From: rrajesh () helixcommunity ! org
Date: 2007-01-08 17:36:07
Message-ID: 200701081736.l08HaZVt031778 () mailer ! progressive-comp ! com
[Download RAW message or body]
Update of /cvsroot/protocol/transport/common/system/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv18134/pub
Modified Files:
transbuf.h
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: rajesh.rathinasamy@nokia.com
Reviewed by:
Date: 04-Jan-2007
Project: SymbianMmf
ErrorId: EOVL-6U82QD
Synopsis: CR: Fix for inconsistency in packet queue emptiness handling in \
RTSPTransportBuffer
There is an inconsistency in the PacketQueue size handling in \
RTSPTransportBuffer. There is a member variable m_bQueueIsEmpty to track the \
emptiness of the packet queue. During a Seek(Resume) case, the boolean variable \
m_bQueueIsEmpty indicates that the Q has one or more packet, but the Q is empty. The \
Boolean variable is false and the size of packetqueue is zero. This results in \
accessing the front and rear packets in the Q which in turn results in a crash.
Solution is to remove the boolean variable and use the packetqueue to obtain the \
emptiness.
Root Cause of the problem: Implementation phase
Files Modified:
protocol/transport/common/system/transbuf.cpp
protocol/transport/common/system/pub/transbuf.h
Image Size and Heap Use impact: no major impact
Module Release testing (STIF) : Pass
Test case(s) Added : No. Reproduction of problem does not have a determined \
procedure. Very hard to reproduce.
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5, winscw
Branch: Head & 210CayS
Index: transbuf.h
===================================================================
RCS file: /cvsroot/protocol/transport/common/system/pub/transbuf.h,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- transbuf.h 14 Nov 2006 21:25:17 -0000 1.14
+++ transbuf.h 8 Jan 2007 17:36:04 -0000 1.15
@@ -57,8 +57,8 @@
#include "cachobj.h"
#include "hxthread.h"
+#include "hxdeque.h"
-class HX_deque;
class ClientPacket;
class RTSPTransport;
@@ -193,6 +193,9 @@
void Func();
private:
+
+ inline HXBOOL IsQueueEmpty();
+
class RTSPTransportBufferCallback : public IHXCallback
{
public:
@@ -240,7 +243,6 @@
HXBOOL m_bWaitingForLiveSeekFlush;
HXBOOL m_bFlushHolding;
HXBOOL m_bIsEnded;
- HXBOOL m_bQueueIsEmpty;
HXBOOL m_bStreamBegin;
HXBOOL m_bStreamDone;
HXBOOL m_bSourceStopped;
@@ -339,4 +341,15 @@
return m_ulByteLimit;
}
+inline HXBOOL
+RTSPTransportBuffer::IsQueueEmpty()
+{
+ HXBOOL bRet = TRUE;
+ if(m_pPacketDeque != NULL)
+ {
+ bRet = m_pPacketDeque->empty();
+ }
+ return bRet;
+}
+
#endif /* _TRANSPORT_BUFFER_H_ */
_______________________________________________
Protocol-cvs mailing list
Protocol-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/protocol-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic