Moritz Bunkus
580add661f
Bump version number, add release message
2015-10-20 15:05:13 +02:00
Moritz Bunkus
88409e2a94
EbmlMaster: propagate upper level element after infinite sized one correctly
...
When the parser encountered a deeply nested element with an infinite
size then a following element of an upper level was not propagated
correctly. Instead the element with the infinite size was added into the
EBML element tree a second time resulting in memory access after freeing
it and multiple attempts to free the same memory address during
destruction.
Fixes the issue reported as Cisco TALOS-CAN-0037.
2015-10-20 14:54:55 +02:00
Moritz Bunkus
24e5cd7c66
EbmlElement: don't read beyond end of buffer when reading variable length integers
2015-10-20 14:54:55 +02:00
Moritz Bunkus
12b560adc2
EbmlMaster.cpp: unwrap huge if; fix indentation
2015-10-20 14:54:55 +02:00
Moritz Bunkus
ababb64e0c
EbmlUnicodeString: don't read beyond end of string
...
The conversion from an UTF-8 encoded string into a wchar_t one was
reading from beyond the end of the source buffer if the length indicated
by a UTF-8 character's first byte exceeds the number of bytes actually
present afterwards.
Fixes the issue reported as Cisco TALOS-CAN-0036.
2015-10-20 14:54:55 +02:00
Moritz Bunkus
c161e600b3
Bump version number, add release message
2015-10-17 15:47:22 +02:00
Steve Lhomme
642c3c4e27
detect EOF when reading the element size, similar to when reading the element id
2015-08-21 15:42:12 +02:00
Steve Lhomme
8427995f27
Merge pull request #2 from RedDwarf69/master
...
Update licensing information (FSF address)
2015-06-12 07:41:18 +02:00
Moritz Bunkus
b1a4c9ac00
EbmlElement: don't catch exceptions when writing elements
2015-01-04 15:05:42 +01:00
Moritz Bunkus
8055be972c
EbmlMaster::Read(): drop elements with unset values in SCOPE_FULL_DATA mode
...
This prevents elements that couldn't be read properly (e.g. due to
defective data) from being handed over to the calling code in at best
half initialized state. See https://trac.bunkus.org/ticket/1096
2014-12-20 17:30:06 +01:00
Moritz Bunkus
6ba868a49b
MemReadIOCallback, SafeReadIOCallback: add new classes for safe (memory) reading
...
squash! EbmlMemoryStream: add new class for safe memory reading
2014-12-20 17:29:48 +01:00
Moritz Bunkus
ce72b9266a
cosmetics: unify indentation
2014-12-19 14:40:44 +01:00
Moritz Bunkus
34554928aa
cosmetics: use spaces instead of tab characters; remove trailing whitespace
2014-12-19 00:23:13 +01:00
Moritz Bunkus
dc9a431375
version: bump version to 1.3.1
2014-12-19 00:20:32 +01:00
Moritz Bunkus
95ff31de88
EbmlMaster: don't try to skip data on elements with unknown sizes
2014-12-19 00:20:32 +01:00
Moritz Bunkus
ea8ea4ca99
EbmlMaster: don't try to get end position of an element with an unknown size
...
See https://trac.bunkus.org/ticket/1089
2014-12-19 00:20:32 +01:00
Moritz Bunkus
ef3f1430dd
Merge pull request #3 from maksqwe/master
...
Some of the fixes and optimization
2014-05-12 20:02:47 +02:00
Moritz Bunkus
a366eaa89e
Don't cause over-/underflow on certain platforms
...
On mingw 32bit this comparison gives a warning about always being
true, which can only be the case if one of the constant actually
over/underflows.
2013-12-07 13:32:22 +01:00
Moritz Bunkus
b0c4cb4701
Avoid compiler warning about possible use of uninitialized values
2013-10-19 12:25:30 +02:00
maksqwe
f0cf0dcbec
fix indentation
2013-08-23 21:58:04 +03:00
maksqwe
af339a7a7a
1. "wcslen" function was called multiple times with "const wchar_t* Path"
...
2. fix mistake which led to undefined behavior "uint64(High<<32)" -> "uint64(High)<<32"
3. optimize std::vector<>::iterator's usage "iter++" -> "++iter". See preincrement and postincrement operator++()
2013-08-23 00:30:37 +03:00
Denis Charmet
0f99c2d712
Use (std::nothrow) with new when the code check for null pointer results.
2013-05-01 12:40:54 +02:00
Cristian Morales Vega
39ea616d5f
Update licensing information
...
Substitute LICENSE.LGPL for the latest copy from http://www.gnu.org/ . And update
the FSF address and links in all the file headers.
2013-04-14 12:07:13 +01:00
Cristian Morales Vega
71fbd5a521
Use Linux-style EOL for non Windows specific files
2013-04-06 08:53:50 +01:00
Moritz Bunkus
7dd909bef7
Add std::wstring constructor for UTFstring
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@844 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2012-09-05 20:21:59 +00:00
Moritz Bunkus
0312461091
Provide Get-/SetValue()/Get-/SetValueUTF8() for Ebml(Unicode)String; make Date values use 64bit ints
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@841 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2012-09-04 07:37:12 +00:00
Moritz Bunkus
b95a4104aa
Provide GetValue() and SetValue() functions for EbmlFloat/SInteger/UInteger
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@840 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2012-09-04 07:36:48 +00:00
Moritz Bunkus
c2ab2859ac
Make int conversion operators const
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@839 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2012-09-04 07:36:24 +00:00
Moritz Bunkus
d5f30db3c6
Bump version number to 1.3.0
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@838 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2012-09-04 07:36:04 +00:00
Moritz Bunkus
88cdc30938
Fix several gcc warnings occurring with -Wextra
...
Warnings fixed are:
- warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
- warning: unused parameter ... [-Wunused-parameter]
- warning: comparison is always true due to limited range of data type [-Wtype-limits]
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@822 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-11-25 21:01:45 +00:00
Steve Lhomme
ffeea955a0
libebml: fix some compilation warnings in mingw
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@821 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-10-18 16:55:49 +00:00
Moritz Bunkus
9a31b3864c
Move definition of EbmlCodeVersion into the library
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@803 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-09-11 09:03:43 +00:00
Steve Lhomme
2490c80ad1
libebml: fix the Debug class use
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@796 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-09-09 04:00:42 +00:00
Steve Lhomme
527f98c367
libebml: only use the test element to read once in the loop
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@788 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-07-15 13:31:03 +00:00
Steve Lhomme
7922aef03d
libebml: code cleaning
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@757 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-06-12 09:51:25 +00:00
Steve Lhomme
f2545cc6d7
libebml: fix the size returned by MemIOCallback::read() when reaching the end of the buffer
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@747 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-04-26 17:14:24 +00:00
Steve Lhomme
81b5b9ff60
libebml: fix the constructor of CRTError (path from Graham 'gbooker' Booker)
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@746 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-04-14 07:40:25 +00:00
Steve Lhomme
676d1ba310
libebml: fix compilation of debug builds under win32
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@708 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-03-20 17:33:49 +00:00
Moritz Bunkus
9ff9decf8c
Include <string> headers when std::string is used
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@672 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-02-05 21:26:49 +00:00
Moritz Bunkus
3a490a84ce
Avoid compiler warnings due to differences in signs in comparisons
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@671 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-02-05 21:15:22 +00:00
Moritz Bunkus
d70416282f
Use an explicit cast to std::string; fixes compilation with Sun Studio C compiler
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@670 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-02-05 21:11:28 +00:00
Moritz Bunkus
4ced4ea53e
Fix handling of UTF-8 strings with characters encoded in more than three bytes.
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@647 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2011-01-29 11:42:15 +00:00
Steve Lhomme
14039ff241
fix compilation under gcc 4.5
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@520 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-08-19 12:01:28 +00:00
Steve Lhomme
27c3b32bed
libebml: the makefiles use DEBUG and not NDEBUG
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@504 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-08-15 13:07:48 +00:00
Steve Lhomme
99fad2afdf
fix CRC32 detection in master elements
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@493 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-08-12 18:27:18 +00:00
Steve Lhomme
42044e93f5
more safety on the Binary buffer handling in case we run out of memory
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@491 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-08-10 19:04:58 +00:00
Steve Lhomme
df5620c733
libebml: no need to put the internal code of EbmlCRC32 in the public header
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@486 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-08-08 11:16:14 +00:00
Steve Lhomme
866099132f
libebml: EbmlElement::VoidMe() now returns a uint64
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@364 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-06-30 06:07:40 +00:00
Steve Lhomme
5607f4ebc8
libebml: move some operator code in the .cpp files (MSVC has issues in DLLs)
...
+ libmatroska ChangeLog
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@347 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-06-26 09:07:13 +00:00
Steve Lhomme
33c808ec0e
libebml: a plain integer doesn't need a const
...
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libebml@280 a6f86f6d-0131-4f8e-9e7b-e335508773d5
2010-05-27 15:52:47 +00:00