[xiph-commits] r8716 - in trunk/oggdsf: build/oggcodecs
sln/oggdsf_all src/lib/core/directshow/dsfOggDemux
src/lib/core/ogg/libOOOgg src/tools/CMMLDump
illiminable at motherfish-iii.xiph.org
illiminable at motherfish-iii.xiph.org
Mon Jan 10 03:39:32 PST 2005
Author: illiminable
Date: 2005-01-10 03:39:31 -0800 (Mon, 10 Jan 2005)
New Revision: 8716
Modified:
trunk/oggdsf/build/oggcodecs/oggcodecs.vdproj
trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln
trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourcePin.cpp
trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.cpp
trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacketiser.cpp
trunk/oggdsf/src/tools/CMMLDump/CMMLDump.vcproj
Log:
* Fixed a big mem leak in the demux
* Fixed a build config in CMMLDump
Modified: trunk/oggdsf/build/oggcodecs/oggcodecs.vdproj
===================================================================
--- trunk/oggdsf/build/oggcodecs/oggcodecs.vdproj 2005-01-10 09:00:12 UTC (rev 8715)
+++ trunk/oggdsf/build/oggcodecs/oggcodecs.vdproj 2005-01-10 11:39:31 UTC (rev 8716)
@@ -130,6 +130,24 @@
"Entry"
{
"MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
+ "OwnerKey" = "8:_DCF4ED7597F8492AA49DC521111ED0F5"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
+ "OwnerKey" = "8:_8F970C0B2593413CA2A3BBF5F2600387"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
+ "OwnerKey" = "8:_141113E874984C0483C694B14F3C16A3"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
"OwnerKey" = "8:_A0E68123D9D541DFA9691752981C903A"
"MsmSig" = "8:_UNDEFINED"
}
@@ -172,12 +190,6 @@
"Entry"
{
"MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
- "OwnerKey" = "8:_DCF4ED7597F8492AA49DC521111ED0F5"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
"OwnerKey" = "8:_D3E41A5878FC4EC0B0F443CF3E5991BA"
"MsmSig" = "8:_UNDEFINED"
}
@@ -220,12 +232,6 @@
"Entry"
{
"MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
- "OwnerKey" = "8:_8F970C0B2593413CA2A3BBF5F2600387"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
"OwnerKey" = "8:_8D9A2E4C592D4118B80A4AE8394D8963"
"MsmSig" = "8:_UNDEFINED"
}
@@ -328,12 +334,6 @@
"Entry"
{
"MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
- "OwnerKey" = "8:_141113E874984C0483C694B14F3C16A3"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
"OwnerKey" = "8:_0D0DD40A31F842C68B09BE0CBDE1996B"
"MsmSig" = "8:_UNDEFINED"
}
@@ -345,12 +345,6 @@
}
"Entry"
{
- "MsmKey" = "8:_46A378A9B03E4612A645053EDB884C20"
- "OwnerKey" = "8:_054BE8EA6F5E45A7AB2066734E998570"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
"MsmKey" = "8:_4EB6175B98B54613A5087D8EA257D00A"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -412,6 +406,24 @@
"Entry"
{
"MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
+ "OwnerKey" = "8:_DCF4ED7597F8492AA49DC521111ED0F5"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
+ "OwnerKey" = "8:_8F970C0B2593413CA2A3BBF5F2600387"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
+ "OwnerKey" = "8:_141113E874984C0483C694B14F3C16A3"
+ "MsmSig" = "8:_UNDEFINED"
+ }
+ "Entry"
+ {
+ "MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
"OwnerKey" = "8:_A0E68123D9D541DFA9691752981C903A"
"MsmSig" = "8:_UNDEFINED"
}
@@ -460,12 +472,6 @@
"Entry"
{
"MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
- "OwnerKey" = "8:_DCF4ED7597F8492AA49DC521111ED0F5"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
"OwnerKey" = "8:_DB60960DC12343B89500B86D5AB10D02"
"MsmSig" = "8:_UNDEFINED"
}
@@ -520,12 +526,6 @@
"Entry"
{
"MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
- "OwnerKey" = "8:_8F970C0B2593413CA2A3BBF5F2600387"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
"OwnerKey" = "8:_8D9A2E4C592D4118B80A4AE8394D8963"
"MsmSig" = "8:_UNDEFINED"
}
@@ -640,12 +640,6 @@
"Entry"
{
"MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
- "OwnerKey" = "8:_141113E874984C0483C694B14F3C16A3"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
"OwnerKey" = "8:_0D0DD40A31F842C68B09BE0CBDE1996B"
"MsmSig" = "8:_UNDEFINED"
}
@@ -657,12 +651,6 @@
}
"Entry"
{
- "MsmKey" = "8:_655D5383153A6AB10D15352A7EABCC7A"
- "OwnerKey" = "8:_054BE8EA6F5E45A7AB2066734E998570"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
"MsmKey" = "8:_81A3CDB604B64763884C387192BE6771"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -1203,7 +1191,7 @@
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:oggcodecs"
"ProductCode" = "8:{D65F0073-A820-4085-B997-A061171595A7}"
- "PackageCode" = "8:{4B3706EB-221D-4A69-89C2-A2127C97C646}"
+ "PackageCode" = "8:{4DB75A87-AE1D-4E12-9800-E8E640F926D7}"
"UpgradeCode" = "8:{1A644FEB-7597-4FAB-AADE-C2C7C64C5984}"
"RestartWWWService" = "11:FALSE"
"RemovePreviousVersions" = "11:TRUE"
Modified: trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln
===================================================================
--- trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln 2005-01-10 09:00:12 UTC (rev 8715)
+++ trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln 2005-01-10 11:39:31 UTC (rev 8716)
@@ -856,6 +856,7 @@
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libWinCMMLParse", "..\..\src\lib\codecs\cmml\libWinCMMLParse\libWinCMMLParse.vcproj", "{23BAAF7B-AEC3-4812-AA91-7E5061E83A39}"
ProjectSection(ProjectDependencies) = postProject
+ {37CA269C-45DF-4DF7-9C12-3FE3B651D6FC} = {37CA269C-45DF-4DF7-9C12-3FE3B651D6FC}
{AD38DCC6-B431-4B32-8569-74F3376EF2DA} = {AD38DCC6-B431-4B32-8569-74F3376EF2DA}
{2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4} = {2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}
EndProjectSection
Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourcePin.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourcePin.cpp 2005-01-10 09:00:12 UTC (rev 8715)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourcePin.cpp 2005-01-10 11:39:31 UTC (rev 8716)
@@ -90,8 +90,11 @@
return CBaseOutputPin::NonDelegatingQueryInterface(riid, ppv);
}
+
+
bool OggDemuxSourcePin::deliverOggPacket(StampedOggPacket* inPacket)
{
+ //We don't own the packet, so don't delete it.
CAutoLock locStreamLock(mParentFilter->mStreamLock);
@@ -106,6 +109,7 @@
//Error checks
if (locHR != S_OK) {
//Stopping, fluching or error
+
debugLog<<"Failure... No buffer"<<endl;
return false;
}
@@ -136,8 +140,10 @@
if (locHR != S_OK) {
debugLog << "Failure... Queue rejected sample..."<<endl;
//Stopping ??
+
return false;
} else {
+
return true;
}
} else {
Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.cpp 2005-01-10 09:00:12 UTC (rev 8715)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.cpp 2005-01-10 11:39:31 UTC (rev 8716)
@@ -67,6 +67,8 @@
//debugLog<<"Destructor..."<<endl;
//debugLog.close();
delete mSourcePin;
+
+
delete mCodecHeaders;
//delete mPartialPacket;
delete mStreamLock;
@@ -96,6 +98,8 @@
AddPin();
//Add pin will set streamready to true if it was all good.
}
+
+ //This branch we keep the incoming packet so don't delete
} else {
//Data packets...
if (mAllowDispatch) {
@@ -107,8 +111,9 @@
}
processDataPacket(inPacket);
+ delete inPacket;
} else {
- //processExcessPacket(inPacket);
+ delete inPacket;
return false;
}
}
@@ -263,9 +268,9 @@
}
//ANX::: Maybe also needs override. ??
-bool OggStream::dispatchPacket(StampedOggPacket* inPacket) {
+bool OggStream::dispatchPacket(StampedOggPacket* inPacket) { //We don't own this packet.
//debugLog<<"Ogg Stream : Packet stamps = "<<inPacket->startTime()<<" - "<<inPacket->endTime()<<endl;
- return mSourcePin->deliverOggPacket(inPacket);
+ return mSourcePin->deliverOggPacket(inPacket);
}
void OggStream::setSerialNo(unsigned long inSerialNo) {
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacketiser.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacketiser.cpp 2005-01-10 09:00:12 UTC (rev 8715)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPacketiser.cpp 2005-01-10 11:39:31 UTC (rev 8716)
@@ -101,15 +101,19 @@
//If the page header says its a continuation page...
if ((inOggPage->header()->HeaderFlags() & 1) == 1) {
//debugLog<<"acceptOggPage : Page says cont..."<<endl;
+
///... and there is at least 1 packet...
if (inOggPage->numPackets() > 0) {
//debugLog<<"acceptOggPage : ...and there is at least 1 packet..."<<endl;
+
//... and we were expecting a continuation...
if (mPacketiserState == PKRSTATE_AWAITING_CONTINUATION) {
//debugLog<<"acceptOggPage : ... and we were waiting for a cont..."<<endl;
+
//... and the first packet is marked as a continuation...
if (inOggPage->getStampedPacket(0)->isContinuation()) {
//debugLog<<"acceptOggPage : ... and the first packet is a cont..."<<endl;
+
//... merge this packet into our pending page.
//ASSERT when mPacketiserState = PKRSTATE_AWAITING_CONTINUATION, mPending page != NULL
mPendingPacket->merge(inOggPage->getStampedPacket(0));
Modified: trunk/oggdsf/src/tools/CMMLDump/CMMLDump.vcproj
===================================================================
--- trunk/oggdsf/src/tools/CMMLDump/CMMLDump.vcproj 2005-01-10 09:00:12 UTC (rev 8715)
+++ trunk/oggdsf/src/tools/CMMLDump/CMMLDump.vcproj 2005-01-10 11:39:31 UTC (rev 8716)
@@ -23,7 +23,7 @@
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
- RuntimeLibrary="5"
+ RuntimeLibrary="3"
UsePrecompiledHeader="3"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
@@ -70,7 +70,7 @@
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\lib\core\ogg;.;..\..\lib\helper;..\..\lib\codecs\cmml"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="4"
+ RuntimeLibrary="2"
UsePrecompiledHeader="3"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
More information about the commits
mailing list