From 67959c0c9722fc75ce92b65a61bc4aebd79a21c2 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: May 07 2019 13:34:00 +0000 Subject: import libdvdread-5.0.3-9.el8 --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..63f51bb --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/libdvdread-5.0.3.tar.bz2 diff --git a/.libdvdread.metadata b/.libdvdread.metadata new file mode 100644 index 0000000..894bb9e --- /dev/null +++ b/.libdvdread.metadata @@ -0,0 +1 @@ +3cda64c06ca9b617d976c490651db4391a162e1f SOURCES/libdvdread-5.0.3.tar.bz2 diff --git a/SOURCES/A01-UDFReadBlocks-errors.patch b/SOURCES/A01-UDFReadBlocks-errors.patch new file mode 100644 index 0000000..98edbe3 --- /dev/null +++ b/SOURCES/A01-UDFReadBlocks-errors.patch @@ -0,0 +1,162 @@ +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; diff --git a/SPECS/libdvdread.spec b/SPECS/libdvdread.spec new file mode 100644 index 0000000..e74a038 --- /dev/null +++ b/SPECS/libdvdread.spec @@ -0,0 +1,265 @@ +Name: libdvdread +Version: 5.0.3 +Release: 9%{?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 +Provides: bundled(md5-gcc) + +%description +libdvdread provides a simple foundation for reading DVD video disks. +It provides the functionality that is required to access many DVDs. + +%package devel +Summary: Development files for libdvdread +Requires: %{name} = %{version}-%{release} +Requires: pkgconfig + +%description devel +libdvdread provides a simple foundation for reading DVD video disks. +It provides the functionality that is required to access many DVDs. + +This package contains development files for libdvdread. + +%prep +%setup -q +%patch0 -p1 + +%build +%configure --disable-static + +make V=1 %{?_smp_mflags} + +%install +%{__make} install DESTDIR=%{buildroot} +rm %{buildroot}%{_libdir}/libdvdread.la %{buildroot}%{_pkgdocdir}/COPYING + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + +%files +%defattr(-,root,root,-) +%license COPYING +%dir %{_pkgdocdir} +%doc %{_pkgdocdir}/AUTHORS +%doc %{_pkgdocdir}/NEWS +%doc %{_pkgdocdir}/README +%{_libdir}/libdvdread.so.* + +%files devel +%defattr(-,root,root,-) +%doc %{_pkgdocdir}/ChangeLog +%doc %{_pkgdocdir}/TODO +%{_includedir}/dvdread +%{_libdir}/libdvdread.so +%{_libdir}/pkgconfig/dvdread.pc + +%changelog +* Fri Feb 09 2018 Igor Gnatenko - 5.0.3-9 +- Escape macros in %%changelog + +* Wed Feb 07 2018 Fedora Release Engineering - 5.0.3-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Aug 12 2017 Ville Skyttä - 5.0.3-7 +- Own package doc dir, install COPYING as %%license + +* Thu Aug 03 2017 Fedora Release Engineering - 5.0.3-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 5.0.3-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sun Feb 12 2017 Dominik Mierzejewski 5.0.3-4 +- fix hanging on scanning title (patch by John Stebbins) + +* Fri Feb 10 2017 Fedora Release Engineering - 5.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Feb 04 2016 Fedora Release Engineering - 5.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Thu Nov 12 2015 Dominik Mierzejewski 5.0.3-1 +- update to 5.0.3 + +* Mon Jul 27 2015 Frantisek Kluknavsky - 5.0.2-3 +- package documentation properly + +* Wed Jun 17 2015 Fedora Release Engineering - 5.0.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat Feb 07 2015 Dominik Mierzejewski 5.0.2-1 +- update to 5.0.2 +- use https for source URL +- make build more verbose + +* Sat Sep 20 2014 Dominik Mierzejewski 5.0.0-1 +- update to 5.0.0 release + +* Sun Aug 17 2014 Fedora Release Engineering - 4.9.9-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 4.9.9-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu Apr 10 2014 Dominik Mierzejewski 4.9.9-1 +- update to 4.9.9 release +- drop obsolete patch +- switch to autotools configure +- fix bogus date in changelog + +* Thu Dec 19 2013 Dominik Mierzejewski 4.2.1-1 +- updated to 4.2.1 release +- drop obsolete/redundant specfile elements +- add upstream URL +- add missing provides for bundled md5 copylib + +* Sat Aug 03 2013 Fedora Release Engineering - 4.2.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 4.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jul 19 2012 Fedora Release Engineering - 4.2.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri Jan 13 2012 Fedora Release Engineering - 4.2.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Sun Oct 09 2011 Dominik Mierzejewski 4.2.0-1 +- updated to 4.2.0 release + +* Mon Apr 11 2011 Dominik Mierzejewski 4.1.4-0.4.svn1226 +- updated to SVN r1226 +- dropped obsolete endianness check patch + +* Mon Feb 07 2011 Fedora Release Engineering - 4.1.4-0.3.svn1188 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sat Dec 12 2009 Dominik Mierzejewski 4.1.4-0.2.svn1188 +- updated to SVN r1188 (rhbz#540155) + +* Sun Sep 27 2009 Dominik Mierzejewski 4.1.4-0.1.svn1183 +- updated to SVN r1183 +- simplified multilib patch +- fixed endianness issues (rhbz#442508) +- added some docs + +* Fri Jul 24 2009 Fedora Release Engineering - 4.1.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Sat Jun 27 2009 Rex Dieter - 4.1.3-3 +- fix multilib conflict (#477687) + +* Wed Feb 25 2009 Fedora Release Engineering - 4.1.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Sep 09 2008 Dominik Mierzejewski 4.1.3-1 +- update to 4.1.3 final + +* Sun Aug 31 2008 Dominik Mierzejewski 4.1.3-0.3.rc1 +- update to 4.1.3rc1 +- fix include path + +* Thu Jul 17 2008 Dominik Mierzejewski 4.1.3-0.2 +- resurrect package from new upstream + +* Sun Jan 27 2008 Dominik Mierzejewski 0.9.7-4 +- fix missing include (bug 428910) + +* Wed Aug 29 2007 Dominik Mierzejewski 0.9.7-3 +- rebuild for BuildID +- update license tag + +* Sun Nov 26 2006 Dominik Mierzejewski 0.9.7-2 +- Rebuild. + +* Fri Oct 6 2006 Dams - 0.9.7-1 +- Updated to 0.9.7 + +* Wed Sep 20 2006 Ville Skyttä - 0.9.6-2 +- Rebuild. + +* Sun Jul 23 2006 Ville Skyttä - 0.9.6-1 +- 0.9.6. +- Specfile cleanup. + +* Thu Mar 16 2006 Ville Skyttä - 0.9.4-4 +- Fix linking with libdl on x86_64. +- Don't ship static libs. +- Build with dependency tracking disabled. +- Convert specfile and docs to UTF-8. +- Improve package descriptions. + +* Thu Mar 16 2006 Dams - 0.9.4-3 +- We BuildConflicting libdvdcss-devel at build time + +* Mon Mar 13 2006 Thorsten Leemhuis 0.9.4-2 +- Drop Epoch completely + +* Thu Mar 09 2006 Andreas Bierfert +- switch to new release field +- drop Epoch + +* Tue Feb 28 2006 Andreas Bierfert +- add dist + +* Thu Apr 3 2003 Marius Johndal 0:0.9.4-0.fdr.1 +- Initial Fedora RPM release. + +* Mon Mar 31 2003 Matthias Saou +- Rebuilt for Red Hat Linux 9. +- Exclude .la file. + +* Sun Feb 16 2003 Matthias Saou +- Update to 0.9.4. + +* Thu Sep 26 2002 Matthias Saou +- Updated to the latest cvs release. +- Rebuilt for Red Hat Linux 8.0. +- Updated URLs. + +* Mon May 27 2002 Matthias Saou +- Update to 0.9.3. + +* Wed May 15 2002 Matthias Saou +- Fixed the libdvdcss.so.0/1/2 problem again. + +* Thu May 2 2002 Matthias Saou +- Back to using libdvdcss 1.1.1, now it's all merged and fine. +- Rebuilt against Red Hat Linux 7.3. +- Added the %%{?_smp_mflags} expansion. + +* Sat Jan 12 2002 Matthias Saou +- Reverted back to using libdvdcss 0.0.3.ogle3 since it works MUCH better + than 1.0.x. Doh! + +* Tue Nov 13 2001 Matthias Saou +- Rebuilt against libdvdcss 1.0.0 (added a patch). + +* Mon Oct 29 2001 Matthias Saou +- Spec file cleanup and fixes. + +* Thu Oct 11 2001 Martin Norbäck +- Updated to version 0.9.2 + +* Tue Sep 25 2001 Martin Norbäck +- Added small patch to fix the ldopen of libdvdcss + +* Tue Sep 18 2001 Martin Norbäck +- Updated to version 0.9.1 + +* Fri Sep 14 2001 Martin Norbäck +- Split into normal and devel package + +* Thu Sep 6 2001 Martin Norbäck +- Updated to version 0.9.0 + +* Tue Jul 03 2001 Martin Norbäck +- initial version + +