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

List:       helix-server-cvs
Subject:    [Server-cvs] engine/session smil_handler.cpp,1.1.2.3,1.1.2.4
From:       yichen () helixcommunity ! org
Date:       2013-12-16 9:25:59
[Download RAW message or body]

Update of /cvsroot/server/engine/session
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv15318

Modified Files:
      Tag: SERVER_15_1_0
	smil_handler.cpp 
Log Message:
Synopsis
========
CR: fix [RTMP MBR]segmentation fault occurs at interval if the live in smil file \
stopped HLXSRV-818

Branch : SERVER_15_1_0_RN, HEAD

Suggested Reviewer : Anyone

Description
===========
1.Enable smil scanning for hls and dash, set scan interval to 1 minutes 2.ingress a \
RTMP MBR stream 3.create a smil file for RTMP MBR stream and place it in /smildir/

4. in 1 minute, hls and dash segement automatically created by the smill file 5.stop \
the RTMP MBR stream Actual:
segmentation fault occurs per minute when smil scanning begins

The root cause is:
In SmilHandler::LogErr, forget to check whether vhost info pointer is null or not, \
therefore result in reference a null pointer.

My fix is check the pointer.

Files affected
============
server/engine/session/smil_handler.cpp

Test perform
===============
run the case again, and no CA occurs.

Integration Tests:
N/A

Performance Tests: 
N/A

QA Hints
========
None.


Index: smil_handler.cpp
===================================================================
RCS file: /cvsroot/server/engine/session/smil_handler.cpp,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -d -r1.1.2.3 -r1.1.2.4
--- smil_handler.cpp	2 Dec 2013 03:51:40 -0000	1.1.2.3
+++ smil_handler.cpp	16 Dec 2013 09:25:56 -0000	1.1.2.4
@@ -844,7 +844,7 @@
 
         IHXErrorMessages2* pErrorLogger2 = NULL;
         IHXBuffer* pBuffer = NULL;
-        if (HXR_OK == m_pVhostInfo->GetPropertyBuffer("VhostAccount", pBuffer) && \
pBuffer) +        if (m_pVhostInfo && HXR_OK == \
m_pVhostInfo->GetPropertyBuffer("VhostAccount", pBuffer) && pBuffer)  {
             if (HXR_OK == m_pErrorMessages->QueryInterface(IID_IHXErrorMessages2, \
(void**)&pErrorLogger2) && pErrorLogger2)  {
@@ -1252,7 +1252,7 @@
         IHXValues*  pVhostInfo = m_pSmilHandler->GetVhostAccount();
         IHXErrorMessages2* pErrorLogger2 = NULL;
         IHXBuffer* pBuffer = NULL;
-        if (HXR_OK == pVhostInfo->GetPropertyBuffer("VhostAccount", pBuffer) && \
pBuffer) +        if (pVhostInfo && HXR_OK == \
pVhostInfo->GetPropertyBuffer("VhostAccount", pBuffer) && pBuffer)  {
             if (HXR_OK == m_pErrorMessages->QueryInterface(IID_IHXErrorMessages2, \
(void**)&pErrorLogger2) && pErrorLogger2)  {


_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs


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

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