gnu: cheese: Update to 41.0.
* gnu/packages/gnome.scm (cheese): Update to 41.0. [source](patches): Remove. * gnu/packages/patches/cheese-vala-update.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly.
This commit is contained in:
		
							parent
							
								
									d2bddfd736
								
							
						
					
					
						commit
						6e95917b64
					
				
					 3 changed files with 2 additions and 184 deletions
				
			
		| 
						 | 
					@ -947,7 +947,6 @@ dist_patch_DATA =						\
 | 
				
			||||||
  %D%/packages/patches/ceph-disable-cpu-optimizations.patch	\
 | 
					  %D%/packages/patches/ceph-disable-cpu-optimizations.patch	\
 | 
				
			||||||
  %D%/packages/patches/ceph-boost-compat.patch			\
 | 
					  %D%/packages/patches/ceph-boost-compat.patch			\
 | 
				
			||||||
  %D%/packages/patches/ceph-rocksdb-compat.patch		\
 | 
					  %D%/packages/patches/ceph-rocksdb-compat.patch		\
 | 
				
			||||||
  %D%/packages/patches/cheese-vala-update.patch		        \
 | 
					 | 
				
			||||||
  %D%/packages/patches/chmlib-inttypes.patch			\
 | 
					  %D%/packages/patches/chmlib-inttypes.patch			\
 | 
				
			||||||
  %D%/packages/patches/cl-asdf-config-directories.patch		\
 | 
					  %D%/packages/patches/cl-asdf-config-directories.patch		\
 | 
				
			||||||
  %D%/packages/patches/clamav-config-llvm-libs.patch		\
 | 
					  %D%/packages/patches/clamav-config-llvm-libs.patch		\
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -10723,7 +10723,7 @@ photo-booth-like software, such as Cheese.")
 | 
				
			||||||
(define-public cheese
 | 
					(define-public cheese
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "cheese")
 | 
					    (name "cheese")
 | 
				
			||||||
    (version "3.38.0")
 | 
					    (version "41.0")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method url-fetch)
 | 
				
			||||||
              (uri (string-append "mirror://gnome/sources/" name "/"
 | 
					              (uri (string-append "mirror://gnome/sources/" name "/"
 | 
				
			||||||
| 
						 | 
					@ -10731,8 +10731,7 @@ photo-booth-like software, such as Cheese.")
 | 
				
			||||||
                                  version ".tar.xz"))
 | 
					                                  version ".tar.xz"))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "0vyim2avlgq3a48rgdfz5g21kqk11mfb53b2l883340v88mp7ll8"))
 | 
					                "1y92glc0d6w323x2bdbc0gdh1jdffvkbv6cwlwm1rx0wgvv1svqh"))))
 | 
				
			||||||
              (patches (search-patches "cheese-vala-update.patch"))))
 | 
					 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:glib-or-gtk? #t
 | 
					     `(#:glib-or-gtk? #t
 | 
				
			||||||
       ;; Tests require GDK.
 | 
					       ;; Tests require GDK.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,180 +0,0 @@
 | 
				
			||||||
Taken from upstream:
 | 
					 | 
				
			||||||
https://gitlab.gnome.org/GNOME/cheese/-/commit/7cf6268e54620bbbe5e6e61800c50fb0cb4bea57.patch.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
From 7cf6268e54620bbbe5e6e61800c50fb0cb4bea57 Mon Sep 17 00:00:00 2001 From:
 | 
					 | 
				
			||||||
=?UTF-8?q?Corentin=20No=C3=ABl?= <corentin@elementary.io> Date: Fri, 16 Oct
 | 
					 | 
				
			||||||
2020 19:56:26 +0200 Subject: [PATCH] Change GLib.PtrArray into
 | 
					 | 
				
			||||||
GLib.GenericArray
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This is the vala-friendly way of handling GPtrArray.
 | 
					 | 
				
			||||||
Fix several memory leaks on the go and unnecessary reference increase.
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 src/cheese-preferences.vala | 26 ++++++++++++--------------
 | 
					 | 
				
			||||||
 src/cheese-window.vala      | 22 +++++++++++-----------
 | 
					 | 
				
			||||||
 src/vapi/cheese-common.vapi |  2 +-
 | 
					 | 
				
			||||||
 3 files changed, 24 insertions(+), 26 deletions(-)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
diff --git a/src/cheese-preferences.vala b/src/cheese-preferences.vala
 | 
					 | 
				
			||||||
index f56af7e0..80a92431 100644
 | 
					 | 
				
			||||||
--- a/src/cheese-preferences.vala
 | 
					 | 
				
			||||||
+++ b/src/cheese-preferences.vala
 | 
					 | 
				
			||||||
@@ -100,7 +100,7 @@ public PreferencesDialog (Cheese.Camera camera)
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
   private void initialize_camera_devices ()
 | 
					 | 
				
			||||||
   {
 | 
					 | 
				
			||||||
-    unowned GLib.PtrArray devices = camera.get_camera_devices ();
 | 
					 | 
				
			||||||
+    GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
 | 
					 | 
				
			||||||
     camera_model = new Gtk.ListStore (2, typeof (string), typeof (Cheese.CameraDevice));
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
     source_combo.model = camera_model;
 | 
					 | 
				
			||||||
@@ -357,13 +357,13 @@ public PreferencesDialog (Cheese.Camera camera)
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
   private void on_camera_update_num_camera_devices ()
 | 
					 | 
				
			||||||
   {
 | 
					 | 
				
			||||||
-    unowned GLib.PtrArray devices = camera.get_camera_devices ();
 | 
					 | 
				
			||||||
-    Cheese.CameraDevice   dev;
 | 
					 | 
				
			||||||
+    GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
 | 
					 | 
				
			||||||
+    unowned Cheese.CameraDevice   dev;
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
     // Add (if) / Remove (else) a camera device.
 | 
					 | 
				
			||||||
-    if (devices.len > camera_model.iter_n_children (null))
 | 
					 | 
				
			||||||
+    if (devices.length > camera_model.iter_n_children (null))
 | 
					 | 
				
			||||||
     {
 | 
					 | 
				
			||||||
-      dev = (Cheese.CameraDevice) devices.index (devices.len - 1);
 | 
					 | 
				
			||||||
+      dev = devices.get (devices.length - 1);
 | 
					 | 
				
			||||||
       add_camera_device(dev);
 | 
					 | 
				
			||||||
     }
 | 
					 | 
				
			||||||
     else
 | 
					 | 
				
			||||||
@@ -382,12 +382,11 @@ public PreferencesDialog (Cheese.Camera camera)
 | 
					 | 
				
			||||||
       bool device_removed = false;
 | 
					 | 
				
			||||||
       devices.foreach ((device) =>
 | 
					 | 
				
			||||||
       {
 | 
					 | 
				
			||||||
-        var old_device = (Cheese.CameraDevice) device;
 | 
					 | 
				
			||||||
         Cheese.CameraDevice new_device;
 | 
					 | 
				
			||||||
         camera_model.get (iter, 1, out new_device, -1);
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
         // Found the device that was removed.
 | 
					 | 
				
			||||||
-        if (old_device != new_device)
 | 
					 | 
				
			||||||
+        if (device != new_device)
 | 
					 | 
				
			||||||
         {
 | 
					 | 
				
			||||||
             remove_camera_device (iter, new_device, active_device);
 | 
					 | 
				
			||||||
             device_removed = true;
 | 
					 | 
				
			||||||
@@ -418,17 +417,16 @@ public PreferencesDialog (Cheese.Camera camera)
 | 
					 | 
				
			||||||
    *
 | 
					 | 
				
			||||||
    * @param device a Cheese.CameraDevice to add to the device combo box model
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
-  private void add_camera_device (void *device)
 | 
					 | 
				
			||||||
+  private void add_camera_device (Cheese.CameraDevice device)
 | 
					 | 
				
			||||||
   {
 | 
					 | 
				
			||||||
     TreeIter iter;
 | 
					 | 
				
			||||||
-    Cheese.CameraDevice dev = (Cheese.CameraDevice) device;
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
     camera_model.append (out iter);
 | 
					 | 
				
			||||||
     camera_model.set (iter,
 | 
					 | 
				
			||||||
-                      0, dev.get_name (),
 | 
					 | 
				
			||||||
-                      1, dev);
 | 
					 | 
				
			||||||
+                      0, device.get_name (),
 | 
					 | 
				
			||||||
+                      1, device);
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
-    if (camera.get_selected_device () == dev)
 | 
					 | 
				
			||||||
+    if (camera.get_selected_device () == device)
 | 
					 | 
				
			||||||
         source_combo.set_active_iter (iter);
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
     if (camera_model.iter_n_children (null) > 1)
 | 
					 | 
				
			||||||
@@ -445,12 +443,12 @@ public PreferencesDialog (Cheese.Camera camera)
 | 
					 | 
				
			||||||
   private void remove_camera_device (TreeIter iter, Cheese.CameraDevice device_node,
 | 
					 | 
				
			||||||
                              Cheese.CameraDevice active_device_node)
 | 
					 | 
				
			||||||
   {
 | 
					 | 
				
			||||||
-      unowned GLib.PtrArray devices = camera.get_camera_devices ();
 | 
					 | 
				
			||||||
+      GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
       // Check if the camera that we want to remove, is the active one
 | 
					 | 
				
			||||||
       if (device_node == active_device_node)
 | 
					 | 
				
			||||||
       {
 | 
					 | 
				
			||||||
-        if (devices.len > 0)
 | 
					 | 
				
			||||||
+        if (devices.length > 0)
 | 
					 | 
				
			||||||
           set_new_available_camera_device (iter);
 | 
					 | 
				
			||||||
         else
 | 
					 | 
				
			||||||
           this.hide ();
 | 
					 | 
				
			||||||
diff --git a/src/cheese-window.vala b/src/cheese-window.vala
 | 
					 | 
				
			||||||
index ff069808..cc119b68 100644
 | 
					 | 
				
			||||||
--- a/src/cheese-window.vala
 | 
					 | 
				
			||||||
+++ b/src/cheese-window.vala
 | 
					 | 
				
			||||||
@@ -1216,9 +1216,9 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
   public void on_switch_camera_clicked ()
 | 
					 | 
				
			||||||
   {
 | 
					 | 
				
			||||||
-      Cheese.CameraDevice selected;
 | 
					 | 
				
			||||||
-      Cheese.CameraDevice next = null;
 | 
					 | 
				
			||||||
-      GLib.PtrArray cameras;
 | 
					 | 
				
			||||||
+      unowned Cheese.CameraDevice selected;
 | 
					 | 
				
			||||||
+      unowned Cheese.CameraDevice next = null;
 | 
					 | 
				
			||||||
+      GLib.GenericArray<unowned Cheese.CameraDevice> cameras;
 | 
					 | 
				
			||||||
       uint i;
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
       if (camera == null)
 | 
					 | 
				
			||||||
@@ -1235,9 +1235,9 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
       cameras = camera.get_camera_devices ();
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
-      for (i = 0; i < cameras.len; i++)
 | 
					 | 
				
			||||||
+      for (i = 0; i < cameras.length; i++)
 | 
					 | 
				
			||||||
       {
 | 
					 | 
				
			||||||
-          next = (Cheese.CameraDevice )cameras.index (i);
 | 
					 | 
				
			||||||
+          next = cameras.get (i);
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
           if (next == selected)
 | 
					 | 
				
			||||||
           {
 | 
					 | 
				
			||||||
@@ -1245,13 +1245,13 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
 | 
					 | 
				
			||||||
           }
 | 
					 | 
				
			||||||
       }
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
-      if (i + 1 < cameras.len)
 | 
					 | 
				
			||||||
+      if (i + 1 < cameras.length)
 | 
					 | 
				
			||||||
       {
 | 
					 | 
				
			||||||
-          next = (Cheese.CameraDevice )cameras.index (i + 1);
 | 
					 | 
				
			||||||
+          next = cameras.get (i + 1);
 | 
					 | 
				
			||||||
       }
 | 
					 | 
				
			||||||
       else
 | 
					 | 
				
			||||||
       {
 | 
					 | 
				
			||||||
-          next = (Cheese.CameraDevice )cameras.index (0);
 | 
					 | 
				
			||||||
+          next = cameras.get (0);
 | 
					 | 
				
			||||||
       }
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
       if (next == selected)
 | 
					 | 
				
			||||||
@@ -1269,8 +1269,8 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
   public void set_switch_camera_button_state ()
 | 
					 | 
				
			||||||
   {
 | 
					 | 
				
			||||||
-      Cheese.CameraDevice selected;
 | 
					 | 
				
			||||||
-      GLib.PtrArray cameras;
 | 
					 | 
				
			||||||
+      unowned Cheese.CameraDevice selected;
 | 
					 | 
				
			||||||
+      GLib.GenericArray<unowned Cheese.CameraDevice> cameras;
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
       if (camera == null)
 | 
					 | 
				
			||||||
       {
 | 
					 | 
				
			||||||
@@ -1288,7 +1288,7 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
       cameras = camera.get_camera_devices ();
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
-      if (cameras.len > 1)
 | 
					 | 
				
			||||||
+      if (cameras.length > 1)
 | 
					 | 
				
			||||||
       {
 | 
					 | 
				
			||||||
          switch_camera_button.set_visible (true);
 | 
					 | 
				
			||||||
          return;
 | 
					 | 
				
			||||||
diff --git a/src/vapi/cheese-common.vapi b/src/vapi/cheese-common.vapi
 | 
					 | 
				
			||||||
index 6517cdfc..e4ae7ad3 100644
 | 
					 | 
				
			||||||
--- a/src/vapi/cheese-common.vapi
 | 
					 | 
				
			||||||
+++ b/src/vapi/cheese-common.vapi
 | 
					 | 
				
			||||||
@@ -35,7 +35,7 @@ namespace Cheese
 | 
					 | 
				
			||||||
     [CCode (has_construct_function = false)]
 | 
					 | 
				
			||||||
     public Camera (Clutter.Actor video_texture, string camera_device_node, int x_resolution, int y_resolution);
 | 
					 | 
				
			||||||
     public bool                        get_balance_property_range (string property, double min, double max, double def);
 | 
					 | 
				
			||||||
-    public unowned GLib.PtrArray       get_camera_devices ();
 | 
					 | 
				
			||||||
+    public GLib.GenericArray<unowned Cheese.CameraDevice> get_camera_devices ();
 | 
					 | 
				
			||||||
     public unowned Cheese.VideoFormat  get_current_video_format ();
 | 
					 | 
				
			||||||
     public int                         get_num_camera_devices ();
 | 
					 | 
				
			||||||
     public unowned Cheese.CameraDevice get_selected_device ();
 | 
					 | 
				
			||||||
-- 
 | 
					 | 
				
			||||||
GitLab
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		Reference in a new issue