Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/mpc-hc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUnderground78 <underground78@users.sourceforge.net>2012-08-25 12:04:50 +0400
committerUnderground78 <underground78@users.sourceforge.net>2012-08-25 12:04:50 +0400
commit61eac104aff1cb4437ef50545376b111ac287038 (patch)
treef0480ad72abbdde9ee2e547af6893e667569c8b0 /src/filters/transform
parentc80ab10bb5ce013836569eb926bf3f3026206127 (diff)
Return an error code when memory allocations fail.
Diffstat (limited to 'src/filters/transform')
-rw-r--r--src/filters/transform/MPCVideoDec/MPCVideoDecFilter.cpp6
-rw-r--r--src/filters/transform/MPCVideoDec/VideoDecOutputPin.cpp2
-rw-r--r--src/filters/transform/MpaDecFilter/MpaDecFilter.cpp6
-rw-r--r--src/filters/transform/Mpeg2DecFilter/Mpeg2DecFilter.cpp6
4 files changed, 17 insertions, 3 deletions
diff --git a/src/filters/transform/MPCVideoDec/MPCVideoDecFilter.cpp b/src/filters/transform/MPCVideoDec/MPCVideoDecFilter.cpp
index f465abf5d..3118b1f40 100644
--- a/src/filters/transform/MPCVideoDec/MPCVideoDecFilter.cpp
+++ b/src/filters/transform/MPCVideoDec/MPCVideoDecFilter.cpp
@@ -2453,6 +2453,8 @@ STDMETHODIMP CMPCVideoDecFilter::GetPages(CAUUID* pPages)
{
CheckPointer(pPages, E_POINTER);
+ HRESULT hr = S_OK;
+
#ifdef STANDALONE_FILTER
pPages->cElems = 2;
#else
@@ -2465,9 +2467,11 @@ STDMETHODIMP CMPCVideoDecFilter::GetPages(CAUUID* pPages)
if (pPages->cElems > 1) {
pPages->pElems[1] = __uuidof(CMPCVideoDecCodecWnd);
}
+ } else {
+ hr = E_OUTOFMEMORY;
}
- return S_OK;
+ return hr;
}
STDMETHODIMP CMPCVideoDecFilter::CreatePage(const GUID& guid, IPropertyPage** ppPage)
diff --git a/src/filters/transform/MPCVideoDec/VideoDecOutputPin.cpp b/src/filters/transform/MPCVideoDec/VideoDecOutputPin.cpp
index d17077242..2279e7909 100644
--- a/src/filters/transform/MPCVideoDec/VideoDecOutputPin.cpp
+++ b/src/filters/transform/MPCVideoDec/VideoDecOutputPin.cpp
@@ -120,6 +120,8 @@ STDMETHODIMP CVideoDecOutputPin::GetCreateVideoAcceleratorData(const GUID* pGuid
pConnectMode->wRestrictedMode = m_pVideoDecFilter->GetDXVA1RestrictedMode();
*pdwSizeMiscData = sizeof(DXVA_ConnectMode);
*ppMiscData = pConnectMode;
+ } else {
+ hr = E_OUTOFMEMORY;
}
}
}
diff --git a/src/filters/transform/MpaDecFilter/MpaDecFilter.cpp b/src/filters/transform/MpaDecFilter/MpaDecFilter.cpp
index 26fbcf293..700148ad7 100644
--- a/src/filters/transform/MpaDecFilter/MpaDecFilter.cpp
+++ b/src/filters/transform/MpaDecFilter/MpaDecFilter.cpp
@@ -1943,13 +1943,17 @@ STDMETHODIMP CMpaDecFilter::GetPages(CAUUID* pPages)
{
CheckPointer(pPages, E_POINTER);
+ HRESULT hr = S_OK;
+
pPages->cElems = 1;
pPages->pElems = (GUID*)CoTaskMemAlloc(sizeof(GUID) * pPages->cElems);
if (pPages->pElems != NULL) {
pPages->pElems[0] = __uuidof(CMpaDecSettingsWnd);
+ } else {
+ hr = E_OUTOFMEMORY;
}
- return S_OK;
+ return hr;
}
STDMETHODIMP CMpaDecFilter::CreatePage(const GUID& guid, IPropertyPage** ppPage)
diff --git a/src/filters/transform/Mpeg2DecFilter/Mpeg2DecFilter.cpp b/src/filters/transform/Mpeg2DecFilter/Mpeg2DecFilter.cpp
index cb11faa1f..673cdc0e6 100644
--- a/src/filters/transform/Mpeg2DecFilter/Mpeg2DecFilter.cpp
+++ b/src/filters/transform/Mpeg2DecFilter/Mpeg2DecFilter.cpp
@@ -1071,13 +1071,17 @@ STDMETHODIMP CMpeg2DecFilter::GetPages(CAUUID* pPages)
{
CheckPointer(pPages, E_POINTER);
+ HRESULT hr = S_OK;
+
pPages->cElems = 1;
pPages->pElems = (GUID*)CoTaskMemAlloc(sizeof(GUID) * pPages->cElems);
if (pPages->pElems != NULL) {
pPages->pElems[0] = __uuidof(CMpeg2DecSettingsWnd);
+ } else {
+ hr = E_OUTOFMEMORY;
}
- return S_OK;
+ return hr;
}
STDMETHODIMP CMpeg2DecFilter::CreatePage(const GUID& guid, IPropertyPage** ppPage)