[matroska] r1296 - trunk/foo_input_matroska
[email protected] Sun, 10 Jun 2007 19:32:46 +0400 (MSD)
| Newsgroups | gmane.comp.multimedia.matroska.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: ayana
Date: 2007-06-10 19:32:41 +0400 (Sun, 10 Jun 2007)
New Revision: 1296
Modified:
trunk/foo_input_matroska/filesystem_matroska.cpp
trunk/foo_input_matroska/filesystem_matroska.h
trunk/foo_input_matroska/foo_input_matroska.cpp
trunk/foo_input_matroska/foo_input_matroska.rc
trunk/foo_input_matroska/foo_input_matroska.vcproj
Log:
0.9.2.1
fix: crash media library when rescan
Modified: trunk/foo_input_matroska/filesystem_matroska.cpp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/foo_input_matroska/filesystem_matroska.cpp 2007-03-17 13:11:25 =
UTC (rev 1295)
+++ trunk/foo_input_matroska/filesystem_matroska.cpp 2007-06-10 15:32:41 =
UTC (rev 1296)
@@ -2,8 +2,15 @@
=20
bool filesystem_matroska::get_canonical_path(const char * p_path,pfc::st=
ring_base & p_out)
{
- p_out =3D p_path;
- return true;
+ if (is_our_path(p_path)) {
+ pfc::string8 source, attachment, canonical_path;
+ if (get_source_file_path(p_path, source) && get_attachment_file_name(p=
_path, attachment)) {
+ g_get_canonical_path(source, canonical_path);
+ g_make_matroska_path(p_out, canonical_path, attachment);
+ return true;
+ }
+ }
+ return false;
}
=20
bool filesystem_matroska::is_our_path(const char * p_path)
@@ -16,13 +23,19 @@
return true;
}
}
- return false;
+ return false;
}
=20
bool filesystem_matroska::get_display_path(const char * p_path,pfc::stri=
ng_base & p_out)
{
- p_out =3D p_path;
- return true;
+ pfc::string8 source, attachment;
+ if (get_source_file_path(p_path, source) && get_attachment_file_name(p_=
path, attachment)) {
+ g_get_display_path(source, p_out);
+ p_out.add_string("|");
+ p_out.add_string(attachment);
+ return true;
+ }
+ return false;
}
=20
void filesystem_matroska::open(service_ptr_t<file> & p_out,const char * =
p_path, t_open_mode p_mode,abort_callback & p_abort)
Modified: trunk/foo_input_matroska/filesystem_matroska.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/foo_input_matroska/filesystem_matroska.h 2007-03-17 13:11:25 UT=
C (rev 1295)
+++ trunk/foo_input_matroska/filesystem_matroska.h 2007-06-10 15:32:41 UT=
C (rev 1296)
@@ -4,6 +4,16 @@
#include "../SDK/foobar2000.h"
#include "container_matroska.h"
=20
+/*
+class NOVTABLE filesystem_matroska_interface : public filesystem {
+ FB2K_MAKE_SERVICE_INTERFACE(filesystem_matroska_interface,filesystem);
+};
+
+// {67456A35-7324-448e-8442-CD997FCCCC74}
+FOOGUIDDECL const GUID filesystem_matroska_interface::class_guid =3D=20
+{ 0x67456a35, 0x7324, 0x448e, { 0x84, 0x42, 0xcd, 0x99, 0x7f, 0xcc, 0xcc=
, 0x74 } };
+*/
+
class NOVTABLE filesystem_matroska : public filesystem {
public:
virtual bool get_canonical_path(const char * p_path,pfc::string_base & =
p_out);
Modified: trunk/foo_input_matroska/foo_input_matroska.cpp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/foo_input_matroska/foo_input_matroska.cpp 2007-03-17 13:11:25 U=
TC (rev 1295)
+++ trunk/foo_input_matroska/foo_input_matroska.cpp 2007-06-10 15:32:41 U=
TC (rev 1296)
@@ -658,7 +658,7 @@
=20
DECLARE_COMPONENT_VERSION(
INPUT_MATROSKA_NAME,
- "0.9.2.0",
+ "0.9.2.1",
version
);
=20
Modified: trunk/foo_input_matroska/foo_input_matroska.rc
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/foo_input_matroska/foo_input_matroska.rc 2007-03-17 13:11:25 UT=
C (rev 1295)
+++ trunk/foo_input_matroska/foo_input_matroska.rc 2007-06-10 15:32:41 UT=
C (rev 1296)
@@ -26,8 +26,8 @@
=20
=20
=20
-
-
+
+
=20
=20
=20
@@ -43,11 +43,11 @@
=20
=20
=20
-
+
=20
=20
=20
-
+
=20
=20
=20
Modified: trunk/foo_input_matroska/foo_input_matroska.vcproj
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/foo_input_matroska/foo_input_matroska.vcproj 2007-03-17 13:11:2=
5 UTC (rev 1295)
+++ trunk/foo_input_matroska/foo_input_matroska.vcproj 2007-06-10 15:32:4=
1 UTC (rev 1296)
@@ -75,16 +75,17 @@
/>
<Tool
Name=3D"VCLinkerTool"
- AdditionalDependencies=3D"shared.lib libebmld.lib libmatroskad.lib"
+ AdditionalDependencies=3D"libebmld.lib libmatroskad.lib"
ShowProgress=3D"0"
OutputFile=3D"../foobar2000/components/foo_input_matroska.dll"
LinkIncremental=3D"2"
SuppressStartupBanner=3D"true"
- AdditionalLibraryDirectories=3D"../shared"
+ AdditionalLibraryDirectories=3D""
IgnoreAllDefaultLibraries=3D"false"
IgnoreDefaultLibraryNames=3D""
GenerateDebugInformation=3D"true"
ProgramDatabaseFile=3D".\Debug/foo_input_matroska.pdb"
+ SubSystem=3D"2"
ImportLibrary=3D".\Debug/foo_input_matroska.lib"
TargetMachine=3D"1"
/>
@@ -157,7 +158,7 @@
PreprocessorDefinitions=3D"WIN32;NDEBUG;_WINDOWS;_USRDLL;FOO_MATROSK=
A_EXPORTS"
StringPooling=3D"true"
RuntimeLibrary=3D"0"
- EnableFunctionLevelLinking=3D"true"
+ EnableFunctionLevelLinking=3D"false"
FloatingPointModel=3D"2"
PrecompiledHeaderFile=3D".\Release/foo_input_matroska.pch"
AssemblerListingLocation=3D".\Release/"
@@ -179,15 +180,16 @@
/>
<Tool
Name=3D"VCLinkerTool"
- AdditionalDependencies=3D"shared.lib libebml.lib libmatroska.lib"
+ AdditionalDependencies=3D"libebml.lib libmatroska.lib"
OutputFile=3D".\Release/foo_input_matroska.dll"
Version=3D""
LinkIncremental=3D"1"
SuppressStartupBanner=3D"true"
- AdditionalLibraryDirectories=3D"../shared"
+ AdditionalLibraryDirectories=3D""
IgnoreAllDefaultLibraries=3D"false"
IgnoreDefaultLibraryNames=3D""
ProgramDatabaseFile=3D".\Release/foo_input_matroska.pdb"
+ SubSystem=3D"2"
LinkTimeCodeGeneration=3D"1"
ImportLibrary=3D".\Release/foo_input_matroska.lib"
TargetMachine=3D"1"