Hello community, here is the log from the commit of package libmirage for openSUSE:Factory checked in at 2015-11-26 17:03:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libmirage (Old) and /work/SRC/openSUSE:Factory/.libmirage.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "libmirage" Changes: -------- --- /work/SRC/openSUSE:Factory/libmirage/libmirage.changes 2015-07-25 07:44:31.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libmirage.new/libmirage.changes 2015-11-26 17:03:59.000000000 +0100 @@ -1,0 +2,15 @@ +Mon Nov 23 20:34:07 UTC 2015 - sor.alexei@meowr.ru + +- Update to 3.0.4: + * CUE, CCD, TOC, XCDRoast parsers: Fix a crash due to invalid + read attempts on uninitialised regex match info structure. + * MDS, MDX parser: Fix a memory leak. + * CIF parser: Fix signature matching. + * CIF parser: Improve pretty-print of some values. + * CIF parser: Fix track length calculation. + * CMake: Replace whitespaces in custom target names with "-" + signs (silence CMP0037 warnings on CMake 3.2.2 and newer). +- Add missing MIME compilation. +- Use %cmake macro. + +------------------------------------------------------------------- Old: ---- libmirage-3.0.3.tar.bz2 New: ---- libmirage-3.0.4.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libmirage.spec ++++++ --- /var/tmp/diff_new_pack.ZhmgGL/_old 2015-11-26 17:04:00.000000000 +0100 +++ /var/tmp/diff_new_pack.ZhmgGL/_new 2015-11-26 17:04:00.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package libmirage # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -22,14 +22,14 @@ Summary: A CD-ROM image access library License: GPL-2.0+ Group: Development/Libraries/C and C++ -Version: 3.0.3 +Version: 3.0.4 Release: 0 Url: http://cdemu.sf.net/about/libmirage/ #Git-Clone: git://git.code.sf.net/p/cdemu/code Source: http://downloads.sf.net/cdemu/%name-%version.tar.bz2 BuildRequires: cmake >= 2.8.5 -BuildRequires: pkgconfig >= 0.16 +BuildRequires: pkg-config >= 0.16 BuildRequires: pkgconfig(bzip2) >= 1.0.0 BuildRequires: pkgconfig(glib-2.0) >= 2.28 BuildRequires: pkgconfig(gmodule-2.0) >= 2.28 @@ -38,6 +38,7 @@ BuildRequires: pkgconfig(gtk-doc) >= 1.4 BuildRequires: pkgconfig(liblzma) >= 5.0.0 BuildRequires: pkgconfig(samplerate) >= 0.1.0 +BuildRequires: pkgconfig(shared-mime-info) BuildRequires: pkgconfig(sndfile) >= 1.0.0 BuildRequires: pkgconfig(zlib) >= 1.2.0 @@ -104,7 +105,7 @@ This package contains the MIME type definitions and documentation. %package -n typelib-1_0-libmirage-%pname -Summary: The libmirage CD-ROM image access library - introspection bindings +Summary: The libmirage CD-ROM image access library – introspection bindings Group: System/Libraries %description -n typelib-1_0-libmirage-%pname @@ -118,17 +119,21 @@ %setup -q %build -cmake . \ - -DCMAKE_INSTALL_PREFIX:PATH="%_prefix" \ - -DCMAKE_C_FLAGS:STRING="%optflags" +%cmake -DCMAKE_MODULE_LINKER_FLAGS="" make %{?_smp_mflags} %install -make install DESTDIR="%buildroot" +%cmake_install %post -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig +%post data +%mime_database_post + +%postun data +%mime_database_postun + %files -n %lname %defattr(-,root,root) %_libdir/libmirage.so.10* ++++++ libmirage-3.0.3.tar.bz2 -> libmirage-3.0.4.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/CMakeLists.txt new/libmirage-3.0.4/CMakeLists.txt --- old/libmirage-3.0.3/CMakeLists.txt 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/CMakeLists.txt 2015-11-21 14:54:15.000000000 +0100 @@ -6,7 +6,7 @@ # Release versioning: set (MIRAGE_VERSION_MAJOR 3) set (MIRAGE_VERSION_MINOR 0) -set (MIRAGE_VERSION_MICRO 3) +set (MIRAGE_VERSION_MICRO 4) set (MIRAGE_VERSION_LONG ${MIRAGE_VERSION_MAJOR}.${MIRAGE_VERSION_MINOR}.${MIRAGE_VERSION_MICRO}) set (MIRAGE_VERSION_SHORT ${MIRAGE_VERSION_MAJOR}.${MIRAGE_VERSION_MINOR}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/README new/libmirage-3.0.4/README --- old/libmirage-3.0.3/README 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/README 2015-11-21 14:54:15.000000000 +0100 @@ -1,5 +1,5 @@ libMirage -3.0.3 +3.0.4 ~~~~~ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/cmake/GObjectIntrospection.cmake new/libmirage-3.0.4/cmake/GObjectIntrospection.cmake --- old/libmirage-3.0.3/cmake/GObjectIntrospection.cmake 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/cmake/GObjectIntrospection.cmake 2015-11-21 14:54:15.000000000 +0100 @@ -224,7 +224,7 @@ ) # Actual target - add_custom_target("${GIR_LIBRARY} typelib" ALL DEPENDS ${GIR_LIBRARY} ${GIR_FILENAME} ${GIR_TYPELIB}) + add_custom_target("${GIR_LIBRARY}-typelib" ALL DEPENDS ${GIR_LIBRARY} ${GIR_FILENAME} ${GIR_TYPELIB}) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${GIR_TYPELIB} DESTINATION ${GIR_TYPELIBDIR} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/cmake/GtkDoc.cmake new/libmirage-3.0.4/cmake/GtkDoc.cmake --- old/libmirage-3.0.3/cmake/GtkDoc.cmake 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/cmake/GtkDoc.cmake 2015-11-21 14:54:15.000000000 +0100 @@ -114,7 +114,7 @@ ) # Actual target - add_custom_target ("gtkdoc ${GTKDOC_MODULE}" ALL + add_custom_target ("gtkdoc-${GTKDOC_MODULE}" ALL DEPENDS ${GTKDOC_DOCS_BUILDDIR}/scan.stamp ${GTKDOC_DOCS_BUILDDIR}/sgml.stamp ${GTKDOC_DOCS_BUILDDIR}/html.stamp) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/debian/changelog new/libmirage-3.0.4/debian/changelog --- old/libmirage-3.0.3/debian/changelog 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/debian/changelog 2015-11-21 14:54:15.000000000 +0100 @@ -1,3 +1,7 @@ +libmirage (3.0.4-1) debian; urgency=low + * Updated to 3.0.4 + -- Rok Mandeljc <rok.mandeljc@gmail.com> Sat, 21 Nov 2015 12:00:00 +0100 + libmirage (3.0.3-1) debian; urgency=low * Initial Release. Closes: #705409 -- Henrik Stokseth <henrik@hshq.net> Sat, 05 Apr 2014 12:00:00 +0100 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/debian/gir1.2-mirage-3.0.install new/libmirage-3.0.4/debian/gir1.2-mirage-3.0.install --- old/libmirage-3.0.3/debian/gir1.2-mirage-3.0.install 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/debian/gir1.2-mirage-3.0.install 2015-11-21 14:54:15.000000000 +0100 @@ -1,2 +1,2 @@ -usr/lib/girepository-1.0/* +usr/lib/*/girepository-1.0/* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/images/image-ccd/parser.c new/libmirage-3.0.4/images/image-ccd/parser.c --- old/libmirage-3.0.3/images/image-ccd/parser.c 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/images/image-ccd/parser.c 2015-11-21 14:54:15.000000000 +0100 @@ -1067,6 +1067,7 @@ /* Must be freed in any case */ g_match_info_free(match_info); + match_info = NULL; /* Break if we had a match */ if (matched) { @@ -1090,6 +1091,7 @@ /* Must be freed in any case */ g_match_info_free(match_info); + match_info = NULL; /* Break if we had a match */ if (matched) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/images/image-cif/image-cif.h new/libmirage-3.0.4/images/image-cif/image-cif.h --- old/libmirage-3.0.3/images/image-cif/image-cif.h 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/images/image-cif/image-cif.h 2015-11-21 14:54:15.000000000 +0100 @@ -62,19 +62,21 @@ http://en.wikipedia.org/wiki/Resource_Interchange_File_Format */ +#define CIF_MIN_TRACK_LEN 300 /* Minimum amount of frames per track */ + #pragma pack(1) typedef struct { gchar riff[4]; /* "RIFF" */ - guint32 length; /* Length of block (including this field) */ + guint32 length; /* Length of block (including the type field) */ gchar type[4]; } CIF_Header; /* length: 12 bytes */ typedef struct { gchar riff[4]; /* "RIFF" */ - guint32 length; /* Length of block this entry points to (plus four bytes) */ + guint32 length; /* Length of block this entry points to */ gchar type[4]; /* "adio", "info" */ guint32 offset; /* Offset of track block in image */ guint8 dummy[6]; /* (unknown) */ @@ -127,10 +129,10 @@ guint8 dummy1[205]; gchar isrc[12]; /* ISRC */ guint8 dummy2[28]; - guint16 fadein_length; - guint16 dummy3[5]; - guint16 fadeout_length; - guint16 dummy4[5]; + guint32 fadein_length; /* Measured in frames */ + guint32 dummy3[2]; + guint32 fadeout_length; /* Measured in frames */ + guint32 dummy4[2]; gchar title[]; /* Zero-terminated string. */ } CIF_AudioTrackDescriptor; /* length: 269 bytes + variable title */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/images/image-cif/parser.c new/libmirage-3.0.4/images/image-cif/parser.c --- old/libmirage-3.0.3/images/image-cif/parser.c 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/images/image-cif/parser.c 2015-11-21 14:54:15.000000000 +0100 @@ -23,7 +23,7 @@ static const guint8 riff_signature[4] = { 'R', 'I', 'F', 'F' }; -static const guint8 imag_signature[4] = { 'I', 'M', 'A', 'G' }; +static const guint8 imag_signature[4] = { 'i', 'm', 'a', 'g' }; static const guint8 ofs_signature[4] = { 'o', 'f', 's', ' ' }; static const guint8 disc_signature[4] = { 'd', 'i', 's', 'c' }; @@ -188,14 +188,22 @@ MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: - sector data size: %d (0x%X)\n", __debug__, descriptor->sector_data_size, descriptor->sector_data_size); if ((CIF_Track) descriptor->type == AUDIO) { - audio_descriptor->fadein_length = GUINT16_FROM_LE(audio_descriptor->fadein_length); - audio_descriptor->fadeout_length = GUINT16_FROM_LE(audio_descriptor->fadeout_length); + gchar *fadeinlen, *fadeoutlen; + + audio_descriptor->fadein_length = GUINT32_FROM_LE(audio_descriptor->fadein_length); + audio_descriptor->fadeout_length = GUINT32_FROM_LE(audio_descriptor->fadeout_length); + + fadeinlen = mirage_helper_lba2msf_str(audio_descriptor->fadein_length, FALSE); + fadeoutlen = mirage_helper_lba2msf_str(audio_descriptor->fadeout_length, FALSE); MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: Audio track descriptor:\n", __debug__); MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: - ISRC: %.12s\n", __debug__, audio_descriptor->isrc); - MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: - fade-out length: %d (0x%X)\n", __debug__, audio_descriptor->fadeout_length, audio_descriptor->fadeout_length); - MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: - fade-in length: %d (0x%X)\n", __debug__, audio_descriptor->fadein_length, audio_descriptor->fadein_length); + MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: - fade-out length: %s (%d)\n", __debug__, fadeoutlen, audio_descriptor->fadeout_length); + MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: - fade-in length: %s (%d)\n", __debug__, fadeinlen, audio_descriptor->fadein_length); MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: - title: \"%s\"\n", __debug__, audio_descriptor->title); + + g_free(fadeinlen); + g_free(fadeoutlen); } MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "\n"); @@ -235,15 +243,15 @@ } /* Compute the actual track length */ - if (offset_entry->length % sector_size) { - MIRAGE_DEBUG(self, MIRAGE_DEBUG_WARNING, "%s: declared data chunk length (%d) not divisible by sector size (%d)!\n", __debug__, offset_entry->length, sector_size); - g_set_error(error, MIRAGE_ERROR, MIRAGE_ERROR_PARSER_ERROR, "Declared data chunk length (%d) not divisible by sector size (%d)!\n", offset_entry->length, sector_size); - return NULL; - } - track_length = offset_entry->length / sector_size; + track_length = MAX(descriptor->num_sectors, CIF_MIN_TRACK_LEN); MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: computed track length: %d (0x%X)\n", __debug__, track_length, track_length); - MIRAGE_DEBUG(self, MIRAGE_DEBUG_PARSER, "%s: difference between declared and computed track length: %d (0x%X)\n", __debug__, descriptor->num_sectors - track_length, descriptor->num_sectors - track_length); + /* Sanity check */ + if (track_length * sector_size > offset_entry->length) { + MIRAGE_DEBUG(self, MIRAGE_DEBUG_WARNING, "%s: sanity check failed!\n", __debug__); + g_set_error(error, MIRAGE_ERROR, MIRAGE_ERROR_PARSER_ERROR, "Sanity check failed!"); + return FALSE; + } /* Create new track */ track = g_object_new(MIRAGE_TYPE_TRACK, NULL); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/images/image-cue/parser.c new/libmirage-3.0.4/images/image-cue/parser.c --- old/libmirage-3.0.3/images/image-cue/parser.c 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/images/image-cue/parser.c 2015-11-21 14:54:15.000000000 +0100 @@ -872,6 +872,7 @@ /* Must be freed in any case */ g_match_info_free(match_info); + match_info = NULL; /* Break if we had a match */ if (matched) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/images/image-mds/parser.c new/libmirage-3.0.4/images/image-mds/parser.c --- old/libmirage-3.0.3/images/image-mds/parser.c 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/images/image-mds/parser.c 2015-11-21 14:54:15.000000000 +0100 @@ -190,10 +190,10 @@ g_regex_unref(mds_regex); g_free(ext); - g_match_info_free(match_info); } else { bin_filename = g_strdup(declared_filename); } + g_match_info_free(match_info); g_regex_unref(ext_regex); bin_fullpath = mirage_helper_find_data_file(bin_filename, mds_filename); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/images/image-mdx/parser.c new/libmirage-3.0.4/images/image-mdx/parser.c --- old/libmirage-3.0.3/images/image-mdx/parser.c 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/images/image-mdx/parser.c 2015-11-21 14:54:15.000000000 +0100 @@ -128,10 +128,10 @@ g_regex_unref(mds_regex); g_free(ext); - g_match_info_free(match_info); } else { bin_filename = g_strdup(declared_filename); } + g_match_info_free(match_info); g_regex_unref(ext_regex); bin_fullpath = mirage_helper_find_data_file(bin_filename, mds_filename); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/images/image-toc/parser.c new/libmirage-3.0.4/images/image-toc/parser.c --- old/libmirage-3.0.3/images/image-toc/parser.c 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/images/image-toc/parser.c 2015-11-21 14:54:15.000000000 +0100 @@ -1039,6 +1039,7 @@ /* Must be freed in any case */ g_match_info_free(match_info); + match_info = NULL; /* Break if we had a match */ if (matched) { @@ -1057,6 +1058,7 @@ matched = TRUE; } g_match_info_free(match_info); + match_info = NULL; } } else { /* Append the line to CDTEXT string */ @@ -1081,6 +1083,7 @@ } g_match_info_free(match_info); + match_info = NULL; } /* Complain if we failed to match the line (should it be fatal?) */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmirage-3.0.3/images/image-xcdroast/parser.c new/libmirage-3.0.4/images/image-xcdroast/parser.c --- old/libmirage-3.0.3/images/image-xcdroast/parser.c 2014-11-09 19:01:10.000000000 +0100 +++ new/libmirage-3.0.4/images/image-xcdroast/parser.c 2015-11-21 14:54:15.000000000 +0100 @@ -620,6 +620,7 @@ /* Must be freed in any case */ g_match_info_free(match_info); + match_info = NULL; /* Break if we had a match */ if (matched) { @@ -702,6 +703,7 @@ /* Must be freed in any case */ g_match_info_free(match_info); + match_info = NULL; /* Break if we had a match */ if (matched) {
participants (1)
-
root@hilbert.suse.de