Hello community,

here is the log from the commit of package libmirage for openSUSE:Factory 
checked in at 2017-02-09 11:17:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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-11-26 
17:03:59.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libmirage.new/libmirage.changes 2017-02-09 
11:17:05.382566411 +0100
@@ -1,0 +2,10 @@
+Mon Feb  6 18:08:02 UTC 2017 - jeng...@inai.de
+
+- Update to new upstream release 3.0.5
+  * Removed a spurious stream reference increment when creating
+    text streams.
+  * CUE parser: fixed the flags regex
+  * Text-based parsers: added an assert to verify that all regexes
+    have compiled properly.
+
+-------------------------------------------------------------------

Old:
----
  libmirage-3.0.4.tar.bz2

New:
----
  libmirage-3.0.5.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libmirage.spec ++++++
--- /var/tmp/diff_new_pack.fRQeij/_old  2017-02-09 11:17:05.774510942 +0100
+++ /var/tmp/diff_new_pack.fRQeij/_new  2017-02-09 11:17:05.778510376 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package libmirage
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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,7 +22,7 @@
 Summary:        A CD-ROM image access library
 License:        GPL-2.0+
 Group:          Development/Libraries/C and C++
-Version:        3.0.4
+Version:        3.0.5
 Release:        0
 Url:            http://cdemu.sf.net/about/libmirage/
 
@@ -51,8 +51,8 @@
 
 %package -n %lname
 Summary:        A CD-ROM image access library
-Group:          System/Libraries
 # Technically Suggests:, but pretty useless without
+Group:          System/Libraries
 Requires:       libmirage-%pname >= %version
 
 %description -n %lname

++++++ libmirage-3.0.4.tar.bz2 -> libmirage-3.0.5.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/AUTHORS new/libmirage-3.0.5/AUTHORS
--- old/libmirage-3.0.4/AUTHORS 2015-11-21 14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/AUTHORS 2016-10-09 21:01:03.000000000 +0200
@@ -1,3 +1,3 @@
 Rok Mandeljc <rok DOT mandeljc AT gmail DOT com>
-Henrik Stokseth <henrik AT hshq DOT net>
+Henrik Stokseth <hstok...@users.sourceforge.net>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/CMakeLists.txt 
new/libmirage-3.0.5/CMakeLists.txt
--- old/libmirage-3.0.4/CMakeLists.txt  2015-11-21 14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/CMakeLists.txt  2016-10-09 21:01:03.000000000 +0200
@@ -6,7 +6,7 @@
 # Release versioning:
 set (MIRAGE_VERSION_MAJOR 3)
 set (MIRAGE_VERSION_MINOR 0)
-set (MIRAGE_VERSION_MICRO 4)
+set (MIRAGE_VERSION_MICRO 5)
 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.4/README new/libmirage-3.0.5/README
--- old/libmirage-3.0.4/README  2015-11-21 14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/README  2016-10-09 21:01:03.000000000 +0200
@@ -1,5 +1,5 @@
 libMirage
-3.0.4
+3.0.5
 ~~~~~
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/debian/changelog 
new/libmirage-3.0.5/debian/changelog
--- old/libmirage-3.0.4/debian/changelog        2015-11-21 14:54:15.000000000 
+0100
+++ new/libmirage-3.0.5/debian/changelog        2016-10-09 21:01:03.000000000 
+0200
@@ -1,7 +1,3 @@
-libmirage (3.0.4-1) debian; urgency=low
-  * Updated to 3.0.4
- -- Rok Mandeljc <rok.mande...@gmail.com>  Sat, 21 Nov 2015 12:00:00 +0100
-
-libmirage (3.0.3-1) debian; urgency=low
+libmirage (3.0.5-1) debian; urgency=low
   * Initial Release. Closes: #705409
- -- Henrik Stokseth <hen...@hshq.net>  Sat, 05 Apr 2014 12:00:00 +0100
+ -- Henrik Stokseth <hstok...@users.sourceforge.net>  Sat, 05 Apr 2014 
12:00:00 +0100
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/debian/control 
new/libmirage-3.0.5/debian/control
--- old/libmirage-3.0.4/debian/control  2015-11-21 14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/debian/control  2016-10-09 21:01:03.000000000 +0200
@@ -2,17 +2,17 @@
 Section: libs
 Priority: optional
 Homepage: http://cdemu.sourceforge.net/
-Maintainer: Henrik Stokseth <hen...@hshq.net>
+Maintainer: Henrik Stokseth <hstok...@users.sourceforge.net>
 Build-Depends: pkg-config (>= 0.14), libglib2.0-dev (>= 2.28), libsndfile1-dev,
  libsamplerate0-dev, zlib1g-dev, libbz2-dev, liblzma-dev, gtk-doc-tools,
  gobject-introspection, libgirepository1.0-dev, debhelper (>= 9), cmake (>= 
2.8.5)
-Standards-Version: 3.9.5
+Standards-Version: 3.9.7
 
 
 Package: libmirage10
 Section: libs
 Architecture: any
-Pre-Depends: multiarch-support
+Pre-Depends: ${misc:Pre-Depends}
 Conflicts: libmirage9
 Replaces: libmirage9
 Depends: ${shlibs:Depends}, ${misc:Depends}
@@ -46,7 +46,7 @@
 Package: libmirage10-dev
 Section: libdevel
 Architecture: any
-Pre-Depends: multiarch-support
+Pre-Depends: ${misc:Pre-Depends}
 Depends: libmirage10 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
 Description: CD-ROM image access library (development files)
  This package contains files needed to develop with libMirage.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/debian/copyright 
new/libmirage-3.0.5/debian/copyright
--- old/libmirage-3.0.4/debian/copyright        2015-11-21 14:54:15.000000000 
+0100
+++ new/libmirage-3.0.5/debian/copyright        2016-10-09 21:01:03.000000000 
+0200
@@ -1,4 +1,4 @@
-This package was debianized by Henrik Stokseth <henrik AT hw0 DOT org> on
+This package was debianized by Henrik Stokseth 
<hstok...@users.sourceforge.net> on
 Mon, 24 Des 2007 12:00:00 +0100.
 
 It was downloaded from: http://cdemu.sourceforge.net/
@@ -32,6 +32,6 @@
 On Debian systems, the complete text of the GNU General
 Public License can be found in `/usr/share/common-licenses/GPL'.
 
-The Debian packaging is (C) 2007, Henrik Stokseth <henrik AT hw0 DOT org> and
+The Debian packaging is (C) 2007, Henrik Stokseth 
<hstok...@users.sourceforge.net> and
 is licensed under the GPL, see above.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/images/image-ccd/parser.c 
new/libmirage-3.0.5/images/image-ccd/parser.c
--- old/libmirage-3.0.4/images/image-ccd/parser.c       2015-11-21 
14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/images/image-ccd/parser.c       2016-10-09 
21:01:03.000000000 +0200
@@ -927,6 +927,7 @@
 
     CCD_RegexRule *new_rule = g_new(CCD_RegexRule, 1);
     new_rule->regex = g_regex_new(rule, G_REGEX_OPTIMIZE, 0, NULL);
+    g_assert_nonnull(new_rule->regex);
     new_rule->callback_func = callback;
     /* Append to the list */
     list = g_list_append(list, new_rule);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/images/image-cue/parser.c 
new/libmirage-3.0.5/images/image-cue/parser.c
--- old/libmirage-3.0.4/images/image-cue/parser.c       2015-11-21 
14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/images/image-cue/parser.c       2016-10-09 
21:01:03.000000000 +0200
@@ -730,7 +730,7 @@
     gint flags = 0;
 
     flags_dcp = g_match_info_fetch_named(match_info, "dcp");
-    flags_4ch = g_match_info_fetch_named(match_info, "4ch");
+    flags_4ch = g_match_info_fetch_named(match_info, "fourch");
     flags_pre = g_match_info_fetch_named(match_info, "pre");
     flags_scms = g_match_info_fetch_named(match_info, "scms");
 
@@ -767,6 +767,7 @@
 
     CUE_RegexRule *new_rule = g_new(CUE_RegexRule, 1);
     new_rule->regex = g_regex_new(rule, G_REGEX_OPTIMIZE, 0, NULL);
+    g_assert_nonnull(new_rule->regex);
     new_rule->callback_func = callback;
     /* Append to the list */
     list = g_list_append(list, new_rule);
@@ -801,7 +802,7 @@
     append_regex_rule(&self->priv->regex_rules, 
"PREGAP\\s+(?<msf>[\\d]+:[\\d]+:[\\d]+)$", mirage_parser_cue_callback_pregap);
     append_regex_rule(&self->priv->regex_rules, 
"POSTGAP\\s+(?<msf>[\\d]+:[\\d]+:[\\d]+)$", mirage_parser_cue_callback_postgap);
 
-    append_regex_rule(&self->priv->regex_rules, 
"FLAGS\\+(((?<dcp>DCP)|(?<4ch>4CH)|(?<pre>PRE)|(?<scms>SCMS))\\s*)+$", 
mirage_parser_cue_callback_flags);
+    append_regex_rule(&self->priv->regex_rules, 
"FLAGS\\+(((?<dcp>DCP)|(?<fourch>4CH)|(?<pre>PRE)|(?<scms>SCMS))\\s*)+$", 
mirage_parser_cue_callback_flags);
 
     return;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/images/image-iso/parser.c 
new/libmirage-3.0.5/images/image-iso/parser.c
--- old/libmirage-3.0.4/images/image-iso/parser.c       2015-11-21 
14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/images/image-iso/parser.c       2016-10-09 
21:01:03.000000000 +0200
@@ -79,7 +79,7 @@
     for (gint i = 0; i < G_N_ELEMENTS(valid_subchannel_sizes); i++) {
         for (gint j = 0; j < G_N_ELEMENTS(valid_sector_sizes); j++) {
             gint full_sector_size = valid_sector_sizes[j] + 
valid_subchannel_sizes[i];
-            MIRAGE_DEBUG(self, MIRAGE_DEBUG_IMAGE_ID, "%s: cheking %d-byte 
sector size with %d-byte subchannel...\n", __debug__, valid_sector_sizes[j], 
valid_subchannel_sizes[i]);
+            MIRAGE_DEBUG(self, MIRAGE_DEBUG_IMAGE_ID, "%s: checking %d-byte 
sector size with %d-byte subchannel...\n", __debug__, valid_sector_sizes[j], 
valid_subchannel_sizes[i]);
 
             /* Check if file size is a multiple of full sector size */
             if (file_length % full_sector_size != 0) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/images/image-toc/parser.c 
new/libmirage-3.0.5/images/image-toc/parser.c
--- old/libmirage-3.0.4/images/image-toc/parser.c       2015-11-21 
14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/images/image-toc/parser.c       2016-10-09 
21:01:03.000000000 +0200
@@ -863,6 +863,7 @@
 
     TOC_RegexRule *new_rule = g_new(TOC_RegexRule, 1);
     new_rule->regex = g_regex_new(rule, G_REGEX_OPTIMIZE, 0, NULL);
+    g_assert_nonnull(new_rule->regex);
     new_rule->callback_func = callback;
     /* Append to the list */
     list = g_list_append(list, new_rule);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/images/image-xcdroast/parser.c 
new/libmirage-3.0.5/images/image-xcdroast/parser.c
--- old/libmirage-3.0.4/images/image-xcdroast/parser.c  2015-11-21 
14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/images/image-xcdroast/parser.c  2016-10-09 
21:01:03.000000000 +0200
@@ -496,6 +496,7 @@
 
     XCDROAST_RegexRule *new_rule = g_new(XCDROAST_RegexRule, 1);
     new_rule->regex = g_regex_new(rule, G_REGEX_OPTIMIZE, 0, NULL);
+    g_assert_nonnull(new_rule->regex);
     new_rule->callback_func = callback;
     /* Append to the list */
     list = g_list_append(list, new_rule);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/mirage/context.c 
new/libmirage-3.0.5/mirage/context.c
--- old/libmirage-3.0.4/mirage/context.c        2015-11-21 14:54:15.000000000 
+0100
+++ new/libmirage-3.0.5/mirage/context.c        2016-10-09 21:01:03.000000000 
+0200
@@ -66,6 +66,7 @@
     /* Password function */
     MiragePasswordFunction password_function;
     gpointer password_data;
+    GDestroyNotify password_data_destroy;
 
     /* Stream cache */
     GHashTable *input_stream_cache;
@@ -272,8 +273,9 @@
 /**
  * mirage_context_set_password_function:
  * @self: a #MirageContext
- * @func: (in) (allow-none) (scope call): a password function pointer
+ * @func: (in) (allow-none) (scope notified): a password function pointer
  * @user_data: (in) (closure): pointer to user data to be passed to the 
password function
+ * @destroy: (in) (allow-none): destroy notify for @user_data, or %NULL
  *
  * Sets the password function to context. The function is used by parsers
  * that support encrypted images to obtain password for unlocking such images.
@@ -281,11 +283,17 @@
  * Both @func and @user_data can be %NULL; in that case the appropriate setting
  * will be reset.
  */
-void mirage_context_set_password_function (MirageContext *self, 
MiragePasswordFunction func, gpointer user_data)
+void mirage_context_set_password_function (MirageContext *self, 
MiragePasswordFunction func, gpointer user_data, GDestroyNotify destroy)
 {
+    /* Destroy old password function's data, if necessary */
+    if (self->priv->password_data_destroy) {
+        self->priv->password_data_destroy(self->priv->password_data);
+    }
+
     /* Store the pointers */
     self->priv->password_function = func;
     self->priv->password_data = user_data;
+    self->priv->password_data_destroy = destroy;
 }
 
 /**
@@ -348,14 +356,21 @@
     gint num_parsers;
     const GType *parser_types;
 
+    gint num_filenames = g_strv_length(filenames);
+
+    if (!num_filenames) {
+        g_set_error(error, MIRAGE_ERROR, MIRAGE_ERROR_IMAGE_FILE_ERROR, "No 
image files given!");
+        return NULL;
+    }
+
     /* Get the list of supported parsers */
     if (!mirage_get_parsers_type(&parser_types, &num_parsers, error)) {
         return NULL;
     }
 
     /* Create streams */
-    streams = g_new0(MirageStream *, g_strv_length(filenames)+1);
-    for (gint i = 0; filenames[i]; i++) {
+    streams = g_new0(MirageStream *, num_filenames+1);
+    for (gint i = 0; i < num_filenames; i++) {
         streams[i] = mirage_context_create_input_stream(self, filenames[i], 
error);
         if (!streams[i]) {
             goto end;
@@ -606,6 +621,10 @@
     self->priv->domain = NULL;
     self->priv->name = NULL;
 
+    self->priv->password_function = NULL;
+    self->priv->password_data = NULL;
+    self->priv->password_data_destroy = NULL;
+
     /* Options */
     self->priv->options = g_hash_table_new_full(g_str_hash, g_str_equal, 
g_free, (GDestroyNotify)g_variant_unref);
 
@@ -621,6 +640,11 @@
     g_free(self->priv->domain);
     g_free(self->priv->name);
 
+    /* Destroy password function's data, if necessary */
+    if (self->priv->password_data_destroy) {
+        self->priv->password_data_destroy(self->priv->password_data);
+    }
+
     /* Free options */
     g_hash_table_unref(self->priv->options);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/mirage/context.h 
new/libmirage-3.0.5/mirage/context.h
--- old/libmirage-3.0.4/mirage/context.h        2015-11-21 14:54:15.000000000 
+0100
+++ new/libmirage-3.0.5/mirage/context.h        2016-10-09 21:01:03.000000000 
+0200
@@ -98,7 +98,7 @@
 void mirage_context_set_option (MirageContext *self, const gchar *name, 
GVariant *value);
 GVariant *mirage_context_get_option (MirageContext *self, const gchar *name);
 
-void mirage_context_set_password_function (MirageContext *self, 
MiragePasswordFunction func, gpointer user_data);
+void mirage_context_set_password_function (MirageContext *self, 
MiragePasswordFunction func, gpointer user_data, GDestroyNotify destroy);
 gchar *mirage_context_obtain_password (MirageContext *self, GError **error);
 
 MirageDisc *mirage_context_load_image (MirageContext *self, gchar **filenames, 
GError **error);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/mirage/disc.c 
new/libmirage-3.0.5/mirage/disc.c
--- old/libmirage-3.0.4/mirage/disc.c   2015-11-21 14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/mirage/disc.c   2016-10-09 21:01:03.000000000 +0200
@@ -1526,7 +1526,7 @@
  * @start: (out) (allow-none): location to store DPM start sector, or %NULL
  * @resolution: (out) (allow-none): location to store DPM data resolution, or 
%NULL
  * @num_entries: (out) (allow-none): location to store number of DPM entries, 
or %NULL
- * @data: (out) (allow-none) (array length=num_entries): location to store 
pointer to buffer containing DPM data, or %NULL
+ * @data: (out) (allow-none) (array length=num_entries) (transfer none): 
location to store pointer to buffer containing DPM data, or %NULL
  *
  * Retrieves DPM data for disc. The pointer to buffer containing DPM data 
entries
  * is stored in @data; the buffer belongs to object and therefore should not be
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmirage-3.0.4/mirage/parser.c 
new/libmirage-3.0.5/mirage/parser.c
--- old/libmirage-3.0.4/mirage/parser.c 2015-11-21 14:54:15.000000000 +0100
+++ new/libmirage-3.0.5/mirage/parser.c 2016-10-09 21:01:03.000000000 +0200
@@ -290,9 +290,6 @@
     GVariant *encoding_value;
     const gchar *encoding;
 
-    /* Add reference to provided input stream */
-    g_object_ref(stream);
-
     /* If provided, use the specified encoding; otherwise, try to detect it */
     encoding_value = mirage_contextual_get_option(MIRAGE_CONTEXTUAL(self), 
"encoding");;
     if (encoding_value) {


Reply via email to