Compare commits

...

No commits in common. 'epel9' and 'i8ce' have entirely different histories.
epel9 ... i8ce

18
.gitignore vendored

@ -1,17 +1 @@
libmatroska-1.0.0.tar.bz2 SOURCES/libmatroska-1.5.0.tar.xz
/libmatroska-1.1.0.tar.bz2
/libmatroska-1.2.0.tar.bz2
/libmatroska-1.3.0.tar.bz2
/libmatroska-1.4.0.tar.bz2
/libmatroska-1.4.1.tar.bz2
/libmatroska-1.4.2.tar.bz2
/libmatroska-1.4.4.tar.bz2
/libmatroska-1.4.5.tar.bz2
/libmatroska-1.4.7.tar.bz2
/libmatroska-1.4.8.tar.xz
/libmatroska-1.4.9.tar.xz
/libmatroska-1.5.0.tar.xz
/libmatroska-1.5.2.tar.xz
/libmatroska-1.6.0.tar.xz
/libmatroska-1.6.2.tar.xz
/libmatroska-1.6.3.tar.xz

@ -0,0 +1 @@
066e984d110264dffe0e24f13a8f67a5560610ce SOURCES/libmatroska-1.5.0.tar.xz

@ -0,0 +1,53 @@
diff -ruwbBd libmatroska-1.5.0/src/KaxBlock.cpp libmatroska-1.5.1/src/KaxBlock.cpp
--- libmatroska-1.5.0/src/KaxBlock.cpp 2019-03-12 20:54:34.000000000 +0100
+++ libmatroska-1.5.1/src/KaxBlock.cpp 2019-05-25 12:16:54.000000000 +0200
@@ -628,11 +628,12 @@
// put all Frames in the list
if (mLacing != LACING_NONE) {
// read the number of frames in the lace
- uint32 LastBufferSize = GetSize() - BlockHeadSize - 1; // 1 for number of frame
+ const uint32 TotalLacedSize = GetSize() - BlockHeadSize - 1; // 1 for number of frame
+ uint32 LastBufferSize = TotalLacedSize;
uint8 FrameNum = _TempHead[0]; // number of frames in the lace - 1
// read the list of frame sizes
uint8 Index;
- int32 FrameSize;
+ uint32 FrameSize;
uint32 SizeRead;
uint64 SizeUnknown;
@@ -646,6 +647,8 @@
do {
Result += input.read(_TempHead, 1);
FrameSize += uint8(_TempHead[0]);
+ if (FrameSize > TotalLacedSize)
+ throw SafeReadIOCallback::EndOfStreamX(0);
LastBufferSize--;
FirstFrameLocation++;
@@ -662,6 +665,8 @@
cursor = _tmpBuf = new binary[FrameNum*4]; /// \warning assume the mean size will be coded in less than 4 bytes
Result += input.read(cursor, FrameNum*4);
FrameSize = ReadCodedSizeValue(cursor, SizeRead, SizeUnknown);
+ if (FrameSize > TotalLacedSize)
+ throw SafeReadIOCallback::EndOfStreamX(0);
SizeList[0] = FrameSize;
cursor += SizeRead;
LastBufferSize -= FrameSize + SizeRead;
@@ -670,6 +675,8 @@
// get the size of the frame
SizeRead = LastBufferSize;
FrameSize += ReadCodedSizeSignedValue(cursor, SizeRead, SizeUnknown);
+ if (FrameSize > TotalLacedSize)
+ throw SafeReadIOCallback::EndOfStreamX(0);
SizeList[Index] = FrameSize;
cursor += SizeRead;
LastBufferSize -= FrameSize + SizeRead;
@@ -703,7 +710,6 @@
} catch (SafeReadIOCallback::EndOfStreamX &) {
SetValueIsSet(false);
- std::memset(EbmlBinary::GetBuffer(), 0, GetSize());
myBuffers.clear();
SizeList.clear();
Timecode = 0;

@ -1,16 +1,15 @@
%undefine __cmake_in_source_build
Summary: Open audio/video container format library Summary: Open audio/video container format library
Name: libmatroska Name: libmatroska
Version: 1.6.3 Version: 1.5.0
Release: 3%{?dist} Release: 1%{?dist}
License: LGPLv2+ License: LGPLv2+
URL: https://www.matroska.org/ URL: https://www.matroska.org/
Source0: https://dl.matroska.org/downloads/%{name}/%{name}-%{version}.tar.xz Source0: https://dl.matroska.org/downloads/%{name}/%{name}-%{version}.tar.xz
Patch0: %{name}-memory.patch
BuildRequires: cmake3 BuildRequires: cmake3
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: libebml-devel >= 1.4.0 BuildRequires: libebml-devel >= 1.3.7
Requires: libebml%{_isa} >= 1.4.0 Requires: libebml%{_isa} >= 1.3.7
%description %description
Matroska is an extensible open standard Audio/Video container. It Matroska is an extensible open standard Audio/Video container. It
@ -23,7 +22,7 @@ is usually found as .mkv files (matroska video) and .mka files
Summary: Matroska container format library development files Summary: Matroska container format library development files
Requires: %{name}%{_isa} = %{version}-%{release} Requires: %{name}%{_isa} = %{version}-%{release}
Requires: %{_libdir}/cmake Requires: %{_libdir}/cmake
Requires: libebml-devel >= 1.4.0 Requires: libebml-devel >= 1.3.7
Requires: pkgconfig Requires: pkgconfig
%description devel %description devel
@ -38,15 +37,16 @@ will use the Matroska container format.
%prep %prep
%setup -q %setup -q
%patch0 -p1 -b .m
%build %build
%cmake3 %cmake3 .
%cmake3_build %make_build
%install %install
%cmake3_install %make_install
%ldconfig_scriptlets %ldconfig_scriptlets
@ -55,55 +55,22 @@ will use the Matroska container format.
%files %files
%license LICENSE.LGPL %license LICENSE.LGPL
%doc ChangeLog %doc ChangeLog
%{_libdir}/%{name}.so.7* %{_libdir}/%{name}.so.6*
%files devel %files devel
%{_includedir}/matroska/ %{_includedir}/matroska/
%{_libdir}/%{name}.so %{_libdir}/%{name}.so
%{_libdir}/pkgconfig/%{name}.pc %{_libdir}/pkgconfig/%{name}.pc
%dir %{_libdir}/cmake/Matroska %dir %{_libdir}/cmake/matroska
%{_libdir}/cmake/Matroska/MatroskaConfig.cmake %{_libdir}/cmake/matroska/MatroskaConfig.cmake
%{_libdir}/cmake/Matroska/MatroskaConfigVersion.cmake %{_libdir}/cmake/matroska/MatroskaConfigVersion.cmake
%{_libdir}/cmake/Matroska/MatroskaTargets-noconfig.cmake %{_libdir}/cmake/matroska/MatroskaTargets-noconfig.cmake
%{_libdir}/cmake/Matroska/MatroskaTargets.cmake %{_libdir}/cmake/matroska/MatroskaTargets.cmake
%changelog %changelog
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.3-3 * Thu Feb 29 2024 Sergey Cherevko <s.cherevko@msvsphere-os.ru> - 1.5.0-1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - Rebuilt for MSVSphere 8.9
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue May 18 2021 Dominik Mierzejewski <rpm@greysector.net> - 1.6.3-1
- update to 1.6.3 (#1930173)
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Aug 21 2020 Dominik Mierzejewski <rpm@greysector.net> - 1.6.2-1
- update to 1.6.2 (#1862780)
- use new cmake macros (#1864019)
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.0-3
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jul 07 2020 Dominik Mierzejewski <rpm@greysector.net> - 1.6.0-1
- update to 1.6.0 (#1851594), ABI bump
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Sep 10 2019 Dominik Mierzejewski <rpm@greysector.net> - 1.5.2-1
- update to 1.5.2 (#1688000)
- drop obsolete patch
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Jun 08 2019 Dominik Mierzejewski <rpm@greysector.net> - 1.5.0-1 * Sat Jun 08 2019 Dominik Mierzejewski <rpm@greysector.net> - 1.5.0-1
- update to 1.5.0 - update to 1.5.0

@ -1 +0,0 @@
SHA512 (libmatroska-1.6.3.tar.xz) = 271557c4f8836411782991c069a16cd49d7f9b6f209d1f96f6694f0e8bdfdcda3bbf76512c328555252a8c3e45c5adfcfab1e738304bb2ea85786a6f45af3f41
Loading…
Cancel
Save