Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c85076a4eb |
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
|||||||
SOURCES/libdvdread-5.0.3.tar.bz2
|
libdvdread-6.1.3.tar.bz2
|
||||||
|
|||||||
@ -1 +0,0 @@
|
|||||||
3cda64c06ca9b617d976c490651db4391a162e1f SOURCES/libdvdread-5.0.3.tar.bz2
|
|
||||||
114
7180713BE58D1ADC.asc
Normal file
114
7180713BE58D1ADC.asc
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
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
|
||||||
|
2qzgB8M76g==
|
||||||
|
=Kv5J
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
||||||
@ -1,162 +0,0 @@
|
|||||||
diff --git a/src/dvd_reader.c b/src/dvd_reader.c
|
|
||||||
index 4e112d3..e8d50f3 100644
|
|
||||||
--- a/src/dvd_reader.c
|
|
||||||
+++ b/src/dvd_reader.c
|
|
||||||
@@ -1156,13 +1156,13 @@ int InternalUDFReadBlocksRaw( const dvd_reader_t *device, uint32_t lb_number,
|
|
||||||
|
|
||||||
if( !device->dev ) {
|
|
||||||
fprintf( stderr, "libdvdread: Fatal error in block read.\n" );
|
|
||||||
- return 0;
|
|
||||||
+ return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
ret = dvdinput_seek( device->dev, (int) lb_number );
|
|
||||||
if( ret != (int) lb_number ) {
|
|
||||||
fprintf( stderr, "libdvdread: Can't seek to block %u\n", lb_number );
|
|
||||||
- return 0;
|
|
||||||
+ return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
ret = dvdinput_read( device->dev, (char *) data,
|
|
||||||
diff --git a/src/dvd_udf.c b/src/dvd_udf.c
|
|
||||||
index 5eb3d2b..68c3a9a 100644
|
|
||||||
--- a/src/dvd_udf.c
|
|
||||||
+++ b/src/dvd_udf.c
|
|
||||||
@@ -516,6 +516,7 @@ static int UDFMapICB( dvd_reader_t *device, struct AD ICB, uint8_t *FileType,
|
|
||||||
uint32_t lbnum;
|
|
||||||
uint16_t TagID;
|
|
||||||
struct icbmap tmpmap;
|
|
||||||
+ int ret;
|
|
||||||
|
|
||||||
lbnum = partition->Start + ICB.Location;
|
|
||||||
tmpmap.lbn = lbnum;
|
|
||||||
@@ -526,10 +527,16 @@ static int UDFMapICB( dvd_reader_t *device, struct AD ICB, uint8_t *FileType,
|
|
||||||
}
|
|
||||||
|
|
||||||
do {
|
|
||||||
- if( DVDReadLBUDF( device, lbnum++, 1, LogBlock, 0 ) <= 0 )
|
|
||||||
+ ret = DVDReadLBUDF( device, lbnum++, 1, LogBlock, 0 );
|
|
||||||
+ if( ret < 0 ) {
|
|
||||||
+ return ret;
|
|
||||||
+ }
|
|
||||||
+ else if( ret == 0 ) {
|
|
||||||
TagID = 0;
|
|
||||||
- else
|
|
||||||
+ }
|
|
||||||
+ else {
|
|
||||||
UDFDescriptor( LogBlock, &TagID );
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if( TagID == FileEntry ) {
|
|
||||||
UDFFileEntry( LogBlock, FileType, partition, File );
|
|
||||||
@@ -677,6 +688,7 @@ static int UDFGetAVDP( dvd_reader_t *device,
|
|
||||||
uint32_t lastsector;
|
|
||||||
int terminate;
|
|
||||||
struct avdp_t;
|
|
||||||
+ int ret;
|
|
||||||
|
|
||||||
if(GetUDFCache(device, AVDPCache, 0, avdp))
|
|
||||||
return 1;
|
|
||||||
@@ -687,11 +699,16 @@ static int UDFGetAVDP( dvd_reader_t *device,
|
|
||||||
terminate = 0;
|
|
||||||
|
|
||||||
for(;;) {
|
|
||||||
- if( DVDReadLBUDF( device, lbnum, 1, Anchor, 0 ) > 0 ) {
|
|
||||||
- UDFDescriptor( Anchor, &TagID );
|
|
||||||
- } else {
|
|
||||||
+ ret = DVDReadLBUDF( device, lbnum, 1, Anchor, 0 );
|
|
||||||
+ if( ret < 0 ) {
|
|
||||||
+ return ret;
|
|
||||||
+ }
|
|
||||||
+ else if( ret == 0 ) {
|
|
||||||
TagID = 0;
|
|
||||||
}
|
|
||||||
+ else {
|
|
||||||
+ UDFDescriptor( Anchor, &TagID );
|
|
||||||
+ }
|
|
||||||
if (TagID != AnchorVolumeDescriptorPointer) {
|
|
||||||
/* Not an anchor */
|
|
||||||
if( terminate ) return 0; /* Final try failed */
|
|
||||||
@@ -742,7 +759,7 @@ static int UDFFindPartition( dvd_reader_t *device, int partnum,
|
|
||||||
uint8_t *LogBlock = (uint8_t *)(((uintptr_t)LogBlock_base & ~((uintptr_t)2047)) + 2048);
|
|
||||||
uint32_t lbnum, MVDS_location, MVDS_length;
|
|
||||||
uint16_t TagID;
|
|
||||||
- int i, volvalid;
|
|
||||||
+ int i, volvalid, ret;
|
|
||||||
struct avdp_t avdp;
|
|
||||||
|
|
||||||
if(!UDFGetAVDP(device, &avdp))
|
|
||||||
@@ -761,10 +778,16 @@ static int UDFFindPartition( dvd_reader_t *device, int partnum,
|
|
||||||
lbnum = MVDS_location;
|
|
||||||
do {
|
|
||||||
|
|
||||||
- if( DVDReadLBUDF( device, lbnum++, 1, LogBlock, 0 ) <= 0 )
|
|
||||||
+ ret = DVDReadLBUDF( device, lbnum++, 1, LogBlock, 0 );
|
|
||||||
+ if( ret < 0 ) {
|
|
||||||
+ return ret;
|
|
||||||
+ }
|
|
||||||
+ else if( ret == 0 ) {
|
|
||||||
TagID = 0;
|
|
||||||
- else
|
|
||||||
+ }
|
|
||||||
+ else {
|
|
||||||
UDFDescriptor( LogBlock, &TagID );
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if( ( TagID == PartitionDescriptor ) && ( !part->valid ) ) {
|
|
||||||
/* Partition Descriptor */
|
|
||||||
@@ -805,6 +828,7 @@ uint32_t UDFFindFile( dvd_reader_t *device, const char *filename,
|
|
||||||
struct AD RootICB, File, ICB;
|
|
||||||
char tokenline[ MAX_UDF_FILE_NAME_LEN ];
|
|
||||||
uint8_t filetype;
|
|
||||||
+ int ret;
|
|
||||||
|
|
||||||
*filesize = 0;
|
|
||||||
tokenline[0] = '\0';
|
|
||||||
@@ -820,10 +844,16 @@ uint32_t UDFFindFile( dvd_reader_t *device, const char *filename,
|
|
||||||
/* Find root dir ICB */
|
|
||||||
lbnum = partition.Start;
|
|
||||||
do {
|
|
||||||
- if( DVDReadLBUDF( device, lbnum++, 1, LogBlock, 0 ) <= 0 )
|
|
||||||
+ ret = DVDReadLBUDF( device, lbnum++, 1, LogBlock, 0 );
|
|
||||||
+ if( ret < 0 ) {
|
|
||||||
+ return ret;
|
|
||||||
+ }
|
|
||||||
+ else if( ret == 0 ) {
|
|
||||||
TagID = 0;
|
|
||||||
- else
|
|
||||||
+ }
|
|
||||||
+ else {
|
|
||||||
UDFDescriptor( LogBlock, &TagID );
|
|
||||||
+ }
|
|
||||||
|
|
||||||
/* File Set Descriptor */
|
|
||||||
if( TagID == FileSetDescriptor ) /* File Set Descriptor */
|
|
||||||
@@ -886,7 +916,7 @@ static int UDFGetDescriptor( dvd_reader_t *device, int id,
|
|
||||||
uint32_t lbnum, MVDS_location, MVDS_length;
|
|
||||||
struct avdp_t avdp;
|
|
||||||
uint16_t TagID;
|
|
||||||
- int i, desc_found = 0;
|
|
||||||
+ int i, desc_found = 0, ret;
|
|
||||||
/* Find Anchor */
|
|
||||||
lbnum = 256; /* Try #1, prime anchor */
|
|
||||||
if(bufsize < DVD_VIDEO_LB_LEN)
|
|
||||||
@@ -904,10 +934,16 @@ static int UDFGetDescriptor( dvd_reader_t *device, int id,
|
|
||||||
/* Find Descriptor */
|
|
||||||
lbnum = MVDS_location;
|
|
||||||
do {
|
|
||||||
- if( DVDReadLBUDF( device, lbnum++, 1, descriptor, 0 ) <= 0 )
|
|
||||||
+ ret = DVDReadLBUDF( device, lbnum++, 1, descriptor, 0 );
|
|
||||||
+ if( ret < 0 ) {
|
|
||||||
+ return ret;
|
|
||||||
+ }
|
|
||||||
+ else if( ret == 0 ) {
|
|
||||||
TagID = 0;
|
|
||||||
- else
|
|
||||||
+ }
|
|
||||||
+ else {
|
|
||||||
UDFDescriptor( descriptor, &TagID );
|
|
||||||
+ }
|
|
||||||
if( (TagID == id) && ( !desc_found ) )
|
|
||||||
/* Descriptor */
|
|
||||||
desc_found = 1;
|
|
||||||
6
libdvdread-6.1.3.tar.bz2.asc
Normal file
6
libdvdread-6.1.3.tar.bz2.asc
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iF0EABECAB0WIQRl98a0IGvQV6frc3hxgHE75Y0a3AUCYo0GlQAKCRBxgHE75Y0a
|
||||||
|
3FBCAKCZ8WHwf9/FABynzLgzzvoBDzQ4EwCfVCE9aMcaRo5uqrqJwKWZktlGmLk=
|
||||||
|
=EHs9
|
||||||
|
-----END PGP SIGNATURE-----
|
||||||
@ -1,12 +1,21 @@
|
|||||||
|
%global abi 8
|
||||||
|
|
||||||
Name: libdvdread
|
Name: libdvdread
|
||||||
Version: 5.0.3
|
Version: 6.1.3
|
||||||
Release: 9%{?dist}
|
Release: 9%{?dist}
|
||||||
Summary: A library for reading DVD video discs based on Ogle code
|
Summary: A library for reading DVD video discs based on Ogle code
|
||||||
License: GPLv2+
|
# msvc/contrib/dirent/dirent.c is HPND-Kevlin-Henney, but is not included in the build
|
||||||
URL: http://dvdnav.mplayerhq.hu/
|
# src/logger.c and few other are LGPL-2.1-or-later
|
||||||
|
# part of src/md5.c is LicenseRef-Fedora-Public-Domain
|
||||||
|
# src/dvdread/nav_types.h and src/nav_print.c are GPL-2.0 or GPL-3.0 (no later versions)
|
||||||
|
License: GPL-2.0-or-later AND LGPL-2.1-or-later AND (GPL-2.0-only OR GPL-3.0-only) AND LicenseRef-Fedora-Public-Domain
|
||||||
|
URL: https://www.videolan.org/developers/libdvdnav.html
|
||||||
Source0: https://download.videolan.org/pub/videolan/libdvdread/%{version}/libdvdread-%{version}.tar.bz2
|
Source0: https://download.videolan.org/pub/videolan/libdvdread/%{version}/libdvdread-%{version}.tar.bz2
|
||||||
# https://github.com/HandBrake/HandBrake/issues/535
|
Source1: https://download.videolan.org/pub/videolan/libdvdread/%{version}/libdvdread-%{version}.tar.bz2.asc
|
||||||
Patch0: https://raw.githubusercontent.com/HandBrake/HandBrake/master/contrib/libdvdread/A01-UDFReadBlocks-errors.patch
|
Source2: https://download.videolan.org/pub/keys/7180713BE58D1ADC.asc
|
||||||
|
BuildRequires: gcc
|
||||||
|
BuildRequires: gnupg2
|
||||||
|
BuildRequires: make
|
||||||
Provides: bundled(md5-gcc)
|
Provides: bundled(md5-gcc)
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -25,8 +34,8 @@ It provides the functionality that is required to access many DVDs.
|
|||||||
This package contains development files for libdvdread.
|
This package contains development files for libdvdread.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
|
%{gpgverify} --keyring='%{S:2}' --signature='%{S:1}' --data='%{S:0}'
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure --disable-static
|
%configure --disable-static
|
||||||
@ -34,24 +43,17 @@ This package contains development files for libdvdread.
|
|||||||
make V=1 %{?_smp_mflags}
|
make V=1 %{?_smp_mflags}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%{__make} install DESTDIR=%{buildroot}
|
%make_install
|
||||||
rm %{buildroot}%{_libdir}/libdvdread.la %{buildroot}%{_pkgdocdir}/COPYING
|
rm %{buildroot}%{_libdir}/libdvdread.la %{buildroot}%{_pkgdocdir}/COPYING
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
%ldconfig_scriptlets
|
||||||
|
|
||||||
%postun -p /sbin/ldconfig
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%license COPYING
|
%license COPYING
|
||||||
%dir %{_pkgdocdir}
|
%doc AUTHORS NEWS README.md
|
||||||
%doc %{_pkgdocdir}/AUTHORS
|
%{_libdir}/libdvdread.so.%{abi}*
|
||||||
%doc %{_pkgdocdir}/NEWS
|
|
||||||
%doc %{_pkgdocdir}/README
|
|
||||||
%{_libdir}/libdvdread.so.*
|
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%doc %{_pkgdocdir}/ChangeLog
|
%doc %{_pkgdocdir}/ChangeLog
|
||||||
%doc %{_pkgdocdir}/TODO
|
%doc %{_pkgdocdir}/TODO
|
||||||
%{_includedir}/dvdread
|
%{_includedir}/dvdread
|
||||||
@ -59,6 +61,85 @@ rm %{buildroot}%{_libdir}/libdvdread.la %{buildroot}%{_pkgdocdir}/COPYING
|
|||||||
%{_libdir}/pkgconfig/dvdread.pc
|
%{_libdir}/pkgconfig/dvdread.pc
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 6.1.3-9
|
||||||
|
- Bump release for October 2024 mass rebuild:
|
||||||
|
Resolves: RHEL-64018
|
||||||
|
|
||||||
|
* Tue Aug 13 2024 Pavel Cahyna <pcahyna@redhat.com> - 6.1.3-8
|
||||||
|
- migrated to SPDX license, originally from Fedora by <msuchy>
|
||||||
|
- Correct License: some files are GPL 2 or GPL 3, but not later
|
||||||
|
|
||||||
|
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 6.1.3-7
|
||||||
|
- Bump release for June 2024 mass rebuild
|
||||||
|
|
||||||
|
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.3-6
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.3-5
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.3-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.3-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.3-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon May 30 2022 Dominik Mierzejewski <dominik@greysector.net> 6.1.3-1
|
||||||
|
- update to 6.1.3 (fixes rhbz#2089905)
|
||||||
|
- update project URL
|
||||||
|
|
||||||
|
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.2-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.2-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue May 18 2021 Dominik Mierzejewski <rpm@greysector.net> 6.1.2-1
|
||||||
|
- update to 6.1.2 (fixes rhbz#1950745)
|
||||||
|
|
||||||
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.1-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Oct 15 2020 Dominik Mierzejewski <rpm@greysector.net> 6.1.1-1
|
||||||
|
- update to 6.1.1 (#1815806)
|
||||||
|
|
||||||
|
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.2-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.2-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Nov 14 2019 Dominik Mierzejewski <rpm@greysector.net> 6.0.2-2
|
||||||
|
- track ABI to avoid accidental bumps
|
||||||
|
|
||||||
|
* Mon Oct 14 2019 Dominik Mierzejewski <rpm@greysector.net> 6.0.2-1
|
||||||
|
- update to 6.0.2 (#1761254)
|
||||||
|
- use new gpgverify macro
|
||||||
|
|
||||||
|
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.1-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Feb 08 2019 Dominik Mierzejewski <rpm@greysector.net> 6.0.1-1
|
||||||
|
- update to 6.0.1 (#1672721)
|
||||||
|
- drop upstreamed patch
|
||||||
|
|
||||||
|
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.0-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jul 23 2018 Dominik Mierzejewski <rpm@greysector.net> 6.0.0-1
|
||||||
|
- update to 6.0.0
|
||||||
|
- add BR: gcc for https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot
|
||||||
|
- verify tarball GPG signature
|
||||||
|
- use modern macros
|
||||||
|
- drop redundant defattr
|
||||||
|
- simplify docs handling in main package
|
||||||
|
|
||||||
|
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.3-10
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
||||||
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.0.3-9
|
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.0.3-9
|
||||||
- Escape macros in %%changelog
|
- Escape macros in %%changelog
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user