Compare commits
No commits in common. "c8" and "c9" have entirely different histories.
3
.gitignore
vendored
3
.gitignore
vendored
@ -1 +1,2 @@
|
||||
SOURCES/libdvdread-5.0.3.tar.bz2
|
||||
SOURCES/7180713BE58D1ADC.asc
|
||||
SOURCES/libdvdread-6.1.1.tar.bz2
|
||||
|
||||
@ -1 +1,2 @@
|
||||
3cda64c06ca9b617d976c490651db4391a162e1f SOURCES/libdvdread-5.0.3.tar.bz2
|
||||
3fa7801d9562cc43e08dcd784e9442723ce11230 SOURCES/7180713BE58D1ADC.asc
|
||||
d2e5056de89fb5fed478c0af5a72e8b781d0c396 SOURCES/libdvdread-6.1.1.tar.bz2
|
||||
|
||||
@ -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
SOURCES/libdvdread-6.1.1.tar.bz2.asc
Normal file
6
SOURCES/libdvdread-6.1.1.tar.bz2.asc
Normal file
@ -0,0 +1,6 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iF0EABECAB0WIQRl98a0IGvQV6frc3hxgHE75Y0a3AUCXoigKAAKCRBxgHE75Y0a
|
||||
3NTeAJ9oQjdEFgpxBu1k92h679++X3eSTgCg1aO8n5t+qpZOPGyqEQb0epVZAT4=
|
||||
=KQQe
|
||||
-----END PGP SIGNATURE-----
|
||||
@ -1,12 +1,17 @@
|
||||
%global abi 8
|
||||
|
||||
Name: libdvdread
|
||||
Version: 5.0.3
|
||||
Release: 9%{?dist}
|
||||
Version: 6.1.1
|
||||
Release: 4%{?dist}
|
||||
Summary: A library for reading DVD video discs based on Ogle code
|
||||
License: GPLv2+
|
||||
URL: http://dvdnav.mplayerhq.hu/
|
||||
Source0: https://download.videolan.org/pub/videolan/libdvdread/%{version}/libdvdread-%{version}.tar.bz2
|
||||
# https://github.com/HandBrake/HandBrake/issues/535
|
||||
Patch0: https://raw.githubusercontent.com/HandBrake/HandBrake/master/contrib/libdvdread/A01-UDFReadBlocks-errors.patch
|
||||
Source1: https://download.videolan.org/pub/videolan/libdvdread/%{version}/libdvdread-%{version}.tar.bz2.asc
|
||||
Source2: https://download.videolan.org/pub/keys/7180713BE58D1ADC.asc
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gnupg2
|
||||
BuildRequires: make
|
||||
Provides: bundled(md5-gcc)
|
||||
|
||||
%description
|
||||
@ -25,8 +30,8 @@ It provides the functionality that is required to access many DVDs.
|
||||
This package contains development files for libdvdread.
|
||||
|
||||
%prep
|
||||
%{gpgverify} --keyring='%{S:2}' --signature='%{S:1}' --data='%{S:0}'
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
|
||||
%build
|
||||
%configure --disable-static
|
||||
@ -34,24 +39,17 @@ This package contains development files for libdvdread.
|
||||
make V=1 %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
%{__make} install DESTDIR=%{buildroot}
|
||||
%make_install
|
||||
rm %{buildroot}%{_libdir}/libdvdread.la %{buildroot}%{_pkgdocdir}/COPYING
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
%postun -p /sbin/ldconfig
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%license COPYING
|
||||
%dir %{_pkgdocdir}
|
||||
%doc %{_pkgdocdir}/AUTHORS
|
||||
%doc %{_pkgdocdir}/NEWS
|
||||
%doc %{_pkgdocdir}/README
|
||||
%{_libdir}/libdvdread.so.*
|
||||
%doc AUTHORS NEWS README
|
||||
%{_libdir}/libdvdread.so.%{abi}*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%doc %{_pkgdocdir}/ChangeLog
|
||||
%doc %{_pkgdocdir}/TODO
|
||||
%{_includedir}/dvdread
|
||||
@ -59,6 +57,53 @@ rm %{buildroot}%{_libdir}/libdvdread.la %{buildroot}%{_pkgdocdir}/COPYING
|
||||
%{_libdir}/pkgconfig/dvdread.pc
|
||||
|
||||
%changelog
|
||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 6.1.1-4
|
||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||
Related: rhbz#1991688
|
||||
|
||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 6.1.1-3
|
||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
||||
|
||||
* 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
|
||||
- Escape macros in %%changelog
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user