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-05-08 17:00:07 +0400
committerUnderground78 <underground78@users.sourceforge.net>2012-05-08 17:00:07 +0400
commit4a6ffbbf57fae3f3873e6f82d2dba9e7d0d614a2 (patch)
tree8342c117478dde76876378449eb30c0c56ace122 /src/filters
parent008010c53a8b5a3fe7b9af03ac8bb04bcc9c4b7a (diff)
Use secure version of the string copy functions.
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@4643 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src/filters')
-rw-r--r--src/filters/muxer/MatroskaMuxer/MatroskaFile.h2
-rw-r--r--src/filters/parser/BaseSplitter/BaseSplitter.cpp4
-rw-r--r--src/filters/parser/RealMediaSplitter/RealMediaSplitter.cpp10
-rw-r--r--src/filters/reader/CDDAReader/CDDAReader.cpp2
-rw-r--r--src/filters/reader/CDXAReader/CDXAReader.cpp2
-rw-r--r--src/filters/reader/UDPReader/UDPReader.cpp2
-rw-r--r--src/filters/reader/VTSReader/VTSReader.cpp2
-rw-r--r--src/filters/source/FLICSource/FLICSource.cpp2
-rw-r--r--src/filters/source/ShoutcastSource/ShoutcastSource.cpp2
-rw-r--r--src/filters/source/SubtitleSource/SubtitleSource.cpp2
-rw-r--r--src/filters/switcher/AudioSwitcher/StreamSwitcher.cpp4
11 files changed, 19 insertions, 15 deletions
diff --git a/src/filters/muxer/MatroskaMuxer/MatroskaFile.h b/src/filters/muxer/MatroskaMuxer/MatroskaFile.h
index 190542bf8..d86d7a715 100644
--- a/src/filters/muxer/MatroskaMuxer/MatroskaFile.h
+++ b/src/filters/muxer/MatroskaMuxer/MatroskaFile.h
@@ -71,7 +71,7 @@ namespace MatroskaWriter
}
CBinary& Set(CStringA str) {
SetCount(str.GetLength()+1);
- strcpy((char*)GetData(), str);
+ strcpy_s((char*)GetData(), str.GetLength() + 1, str);
return(*this);
}
// CBinary& Set(CStringA str) {SetCount(str.GetLength()); memcpy((char*)GetData(), str, str.GetLength()); return(*this);}
diff --git a/src/filters/parser/BaseSplitter/BaseSplitter.cpp b/src/filters/parser/BaseSplitter/BaseSplitter.cpp
index daf9e7a8b..63a7b7ccb 100644
--- a/src/filters/parser/BaseSplitter/BaseSplitter.cpp
+++ b/src/filters/parser/BaseSplitter/BaseSplitter.cpp
@@ -243,7 +243,7 @@ HRESULT CBaseSplitterOutputPin::SetName(LPCWSTR pName)
}
m_pName = DNew WCHAR[wcslen(pName)+1];
CheckPointer(m_pName, E_OUTOFMEMORY);
- wcscpy(m_pName, pName);
+ wcscpy_s(m_pName, wcslen(pName) + 1, pName);
return S_OK;
}
@@ -1284,7 +1284,7 @@ STDMETHODIMP CBaseSplitterFilter::GetCurFile(LPOLESTR* ppszFileName, AM_MEDIA_TY
if (!(*ppszFileName)) {
return E_OUTOFMEMORY;
}
- wcscpy(*ppszFileName, m_fn);
+ wcscpy_s(*ppszFileName, m_fn.GetLength() + 1, m_fn);
return S_OK;
}
diff --git a/src/filters/parser/RealMediaSplitter/RealMediaSplitter.cpp b/src/filters/parser/RealMediaSplitter/RealMediaSplitter.cpp
index 32defdcbe..b31cc49de 100644
--- a/src/filters/parser/RealMediaSplitter/RealMediaSplitter.cpp
+++ b/src/filters/parser/RealMediaSplitter/RealMediaSplitter.cpp
@@ -708,17 +708,21 @@ bool CRealMediaSplitterFilter::DemuxLoop()
p->rtStart = 0;
p->rtStop = 1;
- p->SetCount((4+1) + (2+4+(s.name.GetLength()+1)*2) + (2+4+s.data.GetLength()));
+ size_t count = (4+1) + (2+4+(s.name.GetLength()+1)*2) + (2+4+s.data.GetLength());
+ p->SetCount(count);
BYTE* ptr = p->GetData();
- strcpy((char*)ptr, "GAB2");
+ strcpy_s((char*)ptr, count, "GAB2");
ptr += 4+1;
+ count -= 4+1;
*(WORD*)ptr = 2;
ptr += 2;
+ count -= 2;
*(DWORD*)ptr = (s.name.GetLength()+1)*2;
ptr += 4;
- wcscpy((WCHAR*)ptr, CStringW(s.name));
+ count -= 4;
+ wcscpy_s((WCHAR*)ptr, count / 2, CStringW(s.name));
ptr += (s.name.GetLength()+1)*2;
*(WORD*)ptr = 4;
diff --git a/src/filters/reader/CDDAReader/CDDAReader.cpp b/src/filters/reader/CDDAReader/CDDAReader.cpp
index 817bf5b90..2bc895c9b 100644
--- a/src/filters/reader/CDDAReader/CDDAReader.cpp
+++ b/src/filters/reader/CDDAReader/CDDAReader.cpp
@@ -135,7 +135,7 @@ STDMETHODIMP CCDDAReader::GetCurFile(LPOLESTR* ppszFileName, AM_MEDIA_TYPE* pmt)
return E_OUTOFMEMORY;
}
- wcscpy(*ppszFileName, m_fn);
+ wcscpy_s(*ppszFileName, m_fn.GetLength() + 1, m_fn);
return S_OK;
}
diff --git a/src/filters/reader/CDXAReader/CDXAReader.cpp b/src/filters/reader/CDXAReader/CDXAReader.cpp
index 183410e50..b7163ffa9 100644
--- a/src/filters/reader/CDXAReader/CDXAReader.cpp
+++ b/src/filters/reader/CDXAReader/CDXAReader.cpp
@@ -211,7 +211,7 @@ STDMETHODIMP CCDXAReader::GetCurFile(LPOLESTR* ppszFileName, AM_MEDIA_TYPE* pmt)
return E_OUTOFMEMORY;
}
- wcscpy(*ppszFileName, m_fn);
+ wcscpy_s(*ppszFileName, m_fn.GetLength() + 1, m_fn);
return S_OK;
}
diff --git a/src/filters/reader/UDPReader/UDPReader.cpp b/src/filters/reader/UDPReader/UDPReader.cpp
index a149be7b3..083f873b1 100644
--- a/src/filters/reader/UDPReader/UDPReader.cpp
+++ b/src/filters/reader/UDPReader/UDPReader.cpp
@@ -123,7 +123,7 @@ STDMETHODIMP CUDPReader::GetCurFile(LPOLESTR* ppszFileName, AM_MEDIA_TYPE* pmt)
return E_OUTOFMEMORY;
}
- wcscpy(*ppszFileName, m_fn);
+ wcscpy_s(*ppszFileName, m_fn.GetLength() + 1, m_fn);
return S_OK;
}
diff --git a/src/filters/reader/VTSReader/VTSReader.cpp b/src/filters/reader/VTSReader/VTSReader.cpp
index 2a1554005..242382e89 100644
--- a/src/filters/reader/VTSReader/VTSReader.cpp
+++ b/src/filters/reader/VTSReader/VTSReader.cpp
@@ -149,7 +149,7 @@ STDMETHODIMP CVTSReader::GetCurFile(LPOLESTR* ppszFileName, AM_MEDIA_TYPE* pmt)
return E_OUTOFMEMORY;
}
- wcscpy(*ppszFileName, m_fn);
+ wcscpy_s(*ppszFileName, m_fn.GetLength() + 1, m_fn);
return S_OK;
}
diff --git a/src/filters/source/FLICSource/FLICSource.cpp b/src/filters/source/FLICSource/FLICSource.cpp
index 68d7c8001..2459bc566 100644
--- a/src/filters/source/FLICSource/FLICSource.cpp
+++ b/src/filters/source/FLICSource/FLICSource.cpp
@@ -141,7 +141,7 @@ STDMETHODIMP CFLICSource::GetCurFile(LPOLESTR* ppszFileName, AM_MEDIA_TYPE* pmt)
return E_OUTOFMEMORY;
}
- wcscpy(*ppszFileName, m_fn);
+ wcscpy_s(*ppszFileName, m_fn.GetLength() + 1, m_fn);
return S_OK;
}
diff --git a/src/filters/source/ShoutcastSource/ShoutcastSource.cpp b/src/filters/source/ShoutcastSource/ShoutcastSource.cpp
index 7a5da7963..cbd51e111 100644
--- a/src/filters/source/ShoutcastSource/ShoutcastSource.cpp
+++ b/src/filters/source/ShoutcastSource/ShoutcastSource.cpp
@@ -196,7 +196,7 @@ STDMETHODIMP CShoutcastSource::GetCurFile(LPOLESTR* ppszFileName, AM_MEDIA_TYPE*
return E_OUTOFMEMORY;
}
- wcscpy(*ppszFileName, m_fn);
+ wcscpy_s(*ppszFileName, m_fn.GetLength() + 1, m_fn);
return S_OK;
}
diff --git a/src/filters/source/SubtitleSource/SubtitleSource.cpp b/src/filters/source/SubtitleSource/SubtitleSource.cpp
index 16f7ac79a..37f485c8f 100644
--- a/src/filters/source/SubtitleSource/SubtitleSource.cpp
+++ b/src/filters/source/SubtitleSource/SubtitleSource.cpp
@@ -201,7 +201,7 @@ STDMETHODIMP CSubtitleSource::GetCurFile(LPOLESTR* ppszFileName, AM_MEDIA_TYPE*
return E_OUTOFMEMORY;
}
- wcscpy(*ppszFileName, m_fn);
+ wcscpy_s(*ppszFileName, m_fn.GetLength() + 1, m_fn);
return S_OK;
}
diff --git a/src/filters/switcher/AudioSwitcher/StreamSwitcher.cpp b/src/filters/switcher/AudioSwitcher/StreamSwitcher.cpp
index bc1a6bc88..d41bba74a 100644
--- a/src/filters/switcher/AudioSwitcher/StreamSwitcher.cpp
+++ b/src/filters/switcher/AudioSwitcher/StreamSwitcher.cpp
@@ -617,7 +617,7 @@ HRESULT CStreamSwitcherInputPin::CompleteConnect(IPin* pReceivePin)
WCHAR* pName = DNew WCHAR[fileName.GetLength()+1];
if (pName) {
- wcscpy(pName, fileName);
+ wcscpy_s(pName, fileName.GetLength() + 1, fileName);
if (m_pName) {
delete [] m_pName;
}
@@ -1440,7 +1440,7 @@ STDMETHODIMP CStreamSwitcherFilter::Info(long lIndex, AM_MEDIA_TYPE** ppmt, DWOR
if (ppszName) {
*ppszName = (WCHAR*)CoTaskMemAlloc((wcslen(pPin->Name())+1)*sizeof(WCHAR));
if (*ppszName) {
- wcscpy(*ppszName, pPin->Name());
+ wcscpy_s(*ppszName, wcslen(pPin->Name()) + 1, pPin->Name());
}
}