Steve Lhomme
4144cc5d79
libebml: fix the end of reading when the size is unknown/infinite
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@271 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-25 12:05:26 +00:00
Steve Lhomme
8f6b7a6fd9
libebml/libebml2: only Master elements can have an infinite/unknown size
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@270 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-25 12:02:30 +00:00
Steve Lhomme
ece95ac6b7
libebml: we should mark the files we modify
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@256 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-22 18:20:42 +00:00
Steve Lhomme
c9d6482517
libebml: fix non strict access build
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@255 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-22 18:18:29 +00:00
Steve Lhomme
9c1e708150
libebml: fix the EBMLDummy ID reading and displaying
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@251 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-22 12:53:29 +00:00
Steve Lhomme
2ddda867cd
libebml: 0.8.1 fix the infinite/unknown size reading in EbmlElement::FindNextElement()
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@250 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-22 12:10:55 +00:00
Moritz Bunkus
479527964e
Fix the spec files for Fedora and SuSE
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@186 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-09 21:22:11 +00:00
Moritz Bunkus
a268471b51
Updated the version number for the Debian package.
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@178 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-09 14:57:16 +00:00
Moritz Bunkus
2e93d7df35
Fixed DOS newlines
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@177 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-09 14:56:40 +00:00
Moritz Bunkus
3316915374
Set the eol-style property for files in debian/
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@176 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-09 14:44:55 +00:00
Steve Lhomme
5fd406ae80
v1: update the ChangeLog files for imminent release
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@150 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-30 10:19:47 +00:00
Steve Lhomme
da7b4816f3
v1/v2: Add support for const iterators where necessary
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@149 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-30 08:28:24 +00:00
Steve Lhomme
2753bfd8a3
v1/v2: simplify EBML_SEM_ID(EBML_CTX_IDX()) to EBML_CTX_IDX_ID()
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@138 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-19 12:41:49 +00:00
Steve Lhomme
4eef9565c1
v1/v2: add support for reverse iterators
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@133 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-19 08:40:10 +00:00
Steve Lhomme
ab093ddf20
v1: add the possibility to remove an element using its iterator
...
only the const iterators are necessary
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@132 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-19 08:33:43 +00:00
Steve Lhomme
6f87f71cae
v1: favor the use of iterators rather than direct access in the tables (nicer for libebml v2)
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@131 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-19 08:32:50 +00:00
Steve Lhomme
147c3ac163
v1: fix the default size use in (signed)integers
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@126 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-15 15:45:54 +00:00
Steve Lhomme
19ae0bb418
v1/v2: clean the access of EbmlId data
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@124 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-15 14:59:25 +00:00
Steve Lhomme
769a6c3ab7
v1/v2: rename bKeepIntact to bWithDefault for more clarity in the API
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@123 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-15 14:54:49 +00:00
Steve Lhomme
be6a37df06
v1: introduce INVALID_FILEPOS_T to return error values when trying to read/write (only in EbmlVoid::ReplaceWidth for now)
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@121 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-15 09:36:30 +00:00
Steve Lhomme
8bff224319
add new ghost params necessary for libebml2
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@107 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-13 14:07:28 +00:00
Moritz Bunkus
0eac10d271
Let the user use CXXFLAGS for his own flags.
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@105 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-11 16:36:50 +00:00
Moritz Bunkus
d5e9da9100
Fix compilation for mingw due to wrong include directories
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@104 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-11 16:32:56 +00:00
Moritz Bunkus
d223e36d3c
Compilation fix: If EBML_STRICT_API is not defined the EbmlElement does not contain a function called ClassInfo() but only the member variable ClassInfos.
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@103 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-09 19:16:28 +00:00
Steve Lhomme
04478cdbfd
v1/v2: the v2 classes always need their own context in the constructor so we need more macros to ensure that...
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@102 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-09 17:37:06 +00:00
Steve Lhomme
35753addf9
v1: the EbmlSemantic to EbmlCallbacks cast needs a const
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@100 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-09 14:39:26 +00:00
Steve Lhomme
aab35dacc9
v1/v2: EBML_SEM_INFO() is not necessary anymore with EBML_CTX_IDX_INFO()
...
v2: clean EbmlSemantic
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@96 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-09 10:06:35 +00:00
Steve Lhomme
1fdcc6ae21
v1: fix the non-strict API calls compilation
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@95 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-09 06:38:21 +00:00
Moritz Bunkus
b3985c4976
Fixed a warning about using NULL in calculations
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@94 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-08 20:00:23 +00:00
Moritz Bunkus
4134860d67
Fixed a warning about wrong initialization order
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@93 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-08 19:58:29 +00:00
Steve Lhomme
66ccb761d8
use DECLARE_EBML_*** in the legacy code too
...
add a EBML_CTX_IDX() macro to avoid direct access to MyTable
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@92 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-08 16:36:43 +00:00
Steve Lhomme
d0c70fd901
add a EBML_CLASS_CALLBACK() macro when the EbmlCallback pointer is used directly
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@89 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-08 16:19:17 +00:00
Steve Lhomme
a2d9c1e0d6
add EBML_CLASS_SEMCONTEXT() for a more generic way to describe a global context callback
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@88 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-08 16:05:15 +00:00
Steve Lhomme
9ced122b2f
new macro to define the old EbmlSemanticContext if it's not done elsewhere
...
+ add some missing SEMANTIC start/end
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@86 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-07 16:12:16 +00:00
Steve Lhomme
5dd210bfdc
use a macro to define the semantic tables as the v2 library uses a slightly different table format
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@85 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-07 16:09:02 +00:00
Steve Lhomme
2b635aa5ac
EBML_CLASS_CONTEXT() is a contraction of EBML_INFO_CONTEXT(EBML_INFO())
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@84 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-07 16:02:07 +00:00
Steve Lhomme
4d9242a8e6
replace DEFINE_MKX_MASTER_NOBODY() with DEFINE_MKX_MASTER_CONS() for better consistency
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@83 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-07 15:59:32 +00:00
Steve Lhomme
e4aa562e22
mark ValidateSize() as virtual (as a reminder)
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@82 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-07 09:43:00 +00:00
Steve Lhomme
350e192617
by default the any size is OK for Binary elements
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@81 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-07 09:41:09 +00:00
Steve Lhomme
07d6f46f78
move the default values in the .cpp files via the new declaration macros
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@77 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-06 17:20:14 +00:00
Steve Lhomme
2f079f185e
more macro to simplify the class declaration
...
put the default value constructor in the C++ files
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@76 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-06 17:16:54 +00:00
Steve Lhomme
7b4779fe5f
fix compilation when EBML_STRICT_API is not defined
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@74 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-06 07:21:44 +00:00
Steve Lhomme
2161be7870
clean the EBML context creation macro
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@69 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-05 15:52:08 +00:00
Steve Lhomme
071c70631d
more options for the EBML master definitions
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@67 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-03 06:14:04 +00:00
Steve Lhomme
91b9d8cc7e
libebml: add macros to simplify the EBML class item definitions (ID, ClassInfo, SemanticContext)
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@66 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-04-03 06:13:02 +00:00
Moritz Bunkus
0b3faddd90
Don't hide virtual members of the base class
...
'SetDefaultSize(int)' in the derived class hides 'virtual
SetDefault(uint64)' in the base class: The name matches but the
signature is different, and the 'virtual' keyword is missing.
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@63 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-03-28 00:06:39 +00:00
Moritz Bunkus
d7b335f0a8
Properly compare elements
...
If you have "virtual operator <" in a base class and a derived
class and each takes a reference of its own class as an arugment
then the function in the derived class hides the one in the base
class and does not override is as the signatures do not match:
class base {
public:
bool virtual operator <(const base &cmp);
};
class derived: public base {
public:
bool virtual operator <(const derived &cmp);
};
If two instances of base are compared then base::operator< is called:
base *p1, *p2;
if (*p1 < *p2) // calls base::operator<
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@61 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-03-27 23:07:20 +00:00
Moritz Bunkus
1de5badd44
Made changing the tool paths easier. Do not refuse to build with a mingw compiler.
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@56 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-03-23 15:55:17 +00:00
Moritz Bunkus
35942a7134
Make the ranlib and ar executables configurable. Support for setting the cross-compilation tool names easily.
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@53 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-03-23 15:08:11 +00:00
Moritz Bunkus
a65901063d
Fix Endianess detection on Linux.
...
Some platforms like MIPS can come either in little or
in big endian. Therefore a static decision based on the
system used is invalid. The header file endian.h should
be used for systems on which it is available. At the moment
this is at least Linux.
Patch by Frank Neufingerl <fneufingerl@psi.de>
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@51 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-03-23 13:35:44 +00:00