Fixing coverity warnings for render module.
BUG=
Review URL: https://webrtc-codereview.appspot.com/791005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2755 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/src/modules/video_render/main/source/windows/video_render_direct3d9.cc b/src/modules/video_render/main/source/windows/video_render_direct3d9.cc
index 309ccb3..ed9b6e6 100644
--- a/src/modules/video_render/main/source/windows/video_render_direct3d9.cc
+++ b/src/modules/video_render/main/source/windows/video_render_direct3d9.cc
@@ -1064,6 +1064,7 @@
{
WEBRTC_TRACE(kTraceError, kTraceVideo, -1,
"Direct3D failed to GetDIBits in SetBitmap");
+ delete srcPtr;
return -1;
}
DeleteDC(hdcNew);
@@ -1071,6 +1072,7 @@
{
WEBRTC_TRACE(kTraceError, kTraceVideo, -1,
"Direct3D failed to SetBitmap invalid bit depth");
+ delete srcPtr;
return -1;
}
@@ -1087,18 +1089,21 @@
if (FAILED(ret))
{
_pTextureLogo = NULL;
+ delete srcPtr;
return -1;
}
if (!_pTextureLogo)
{
WEBRTC_TRACE(kTraceError, kTraceVideo, -1,
"Texture for rendering not initialized.");
+ delete srcPtr;
return -1;
}
D3DLOCKED_RECT lr;
if (FAILED(_pTextureLogo->LockRect(0, &lr, NULL, 0)))
{
+ delete srcPtr;
return -1;
}
unsigned char* dstPtr = (UCHAR*) lr.pBits;
diff --git a/src/modules/video_render/main/source/windows/video_render_directdraw.cc b/src/modules/video_render/main/source/windows/video_render_directdraw.cc
index 53bd6a0..f597d0e 100644
--- a/src/modules/video_render/main/source/windows/video_render_directdraw.cc
+++ b/src/modules/video_render/main/source/windows/video_render_directdraw.cc
@@ -375,21 +375,27 @@
// this need to have a refcount dueto multiple HWNDS demux
DirectDrawChannel::DirectDrawChannel(DirectDraw* directDraw,
- VideoType blitVideoType,
- VideoType incomingVideoType,
- VideoType screenVideoType,
- VideoRenderDirectDraw* owner) :
-
- _critSect(CriticalSectionWrapper::CreateCriticalSection()), _refCount(1),
- _width(0), _height(0), _numberOfStreams(0), _doubleBuffer(false),
- _directDraw(directDraw), _offScreenSurface(NULL),
- _offScreenSurfaceNext(NULL), _incomingVideoType(incomingVideoType),
- _blitVideoType(blitVideoType),
- _originalBlitVideoType(blitVideoType),
- _screenVideoType(screenVideoType), _deliverInScreenType(false),
- _owner(owner)
-{
- _directDraw->AddRef();
+ VideoType blitVideoType,
+ VideoType incomingVideoType,
+ VideoType screenVideoType,
+ VideoRenderDirectDraw* owner)
+ : _critSect(CriticalSectionWrapper::CreateCriticalSection()),
+ _refCount(1),
+ _width(0),
+ _height(0),
+ _numberOfStreams(0),
+ _doubleBuffer(false),
+ _directDraw(directDraw),
+ _offScreenSurface(NULL),
+ _offScreenSurfaceNext(NULL),
+ _incomingVideoType(incomingVideoType),
+ _blitVideoType(blitVideoType),
+ _originalBlitVideoType(blitVideoType),
+ _screenVideoType(screenVideoType),
+ _deliverInScreenType(false),
+ _offScreenSurfaceUpdated(false),
+ _owner(owner) {
+ _directDraw->AddRef();
}
DirectDrawChannel::~DirectDrawChannel()
diff --git a/src/modules/video_render/main/source/windows/video_render_windows_impl.cc b/src/modules/video_render/main/source/windows/video_render_windows_impl.cc
index 7a7bd80..d6161fa 100644
--- a/src/modules/video_render/main/source/windows/video_render_windows_impl.cc
+++ b/src/modules/video_render/main/source/windows/video_render_windows_impl.cc
@@ -24,16 +24,14 @@
namespace webrtc {
-VideoRenderWindowsImpl::VideoRenderWindowsImpl(
- const WebRtc_Word32 id,
- const VideoRenderType videoRenderType,
- void* window,
- const bool fullscreen) :
- _id(id),
- _renderWindowsCritsect(
- *CriticalSectionWrapper::CreateCriticalSection()),
- _prtWindow(window), _fullscreen(fullscreen), _ptrRendererWin(NULL)
-{
+VideoRenderWindowsImpl::VideoRenderWindowsImpl(const WebRtc_Word32 id,
+ const VideoRenderType videoRenderType, void* window, const bool fullscreen)
+ : _id(id),
+ _renderWindowsCritsect(*CriticalSectionWrapper::CreateCriticalSection()),
+ _prtWindow(window),
+ _fullscreen(fullscreen),
+ _renderMethod(kVideoRenderWinD3D9),
+ _ptrRendererWin(NULL) {
}
VideoRenderWindowsImpl::~VideoRenderWindowsImpl()
@@ -51,8 +49,6 @@
//LogOSAndHardwareDetails();
CheckHWAcceleration();
- _renderMethod = kVideoRenderWinD3D9;
-
// Create the win renderer
switch (_renderMethod)
{
@@ -505,8 +501,8 @@
// Get the IDxDiagContainer object called "DxDiag_DisplayDevices".
// This call may take some time while dxdiag gathers the info.
if (FAILED(hr = m_pDxDiagRoot->GetChildContainer(L"DxDiag_DisplayDevices",
- &pContainer)))
- {
+ &pContainer)) ||
+ !pContainer) {
m_pDxDiagRoot->Release();
m_pDxDiagProvider->Release();
if (coUninitializeIsRequired)
@@ -603,7 +599,8 @@
pDisplayInfo->m_szDriverVersion);
WEBRTC_TRACE(kTraceStateInfo, kTraceVideo, -1,
"DirectDraw Acceleration Enabled --- %s",
- pDisplayInfo->m_szDescription ? "Enabled" : "Disabled");
+ pDisplayInfo->m_bDDAccelerationEnabled ?
+ "Enabled" : "Disabled");
WEBRTC_TRACE(kTraceStateInfo, kTraceVideo, -1,
"bNoHardware --- %s",
pDisplayInfo->m_bNoHardware ? "Enabled" : "Disabled");