Blame packages/f/folks/c44d8e323affd7f1043f300f3325b358cd5b5f0b.patch

Bernhard M. Wiedemann f155be
From c44d8e323affd7f1043f300f3325b358cd5b5f0b Mon Sep 17 00:00:00 2001
Bernhard M. Wiedemann f155be
From: Rico Tzschichholz <ricotz@ubuntu.com>
Bernhard M. Wiedemann f155be
Date: Sun, 30 Jan 2022 19:42:32 +0100
Bernhard M. Wiedemann f155be
Subject: [PATCH] folks-generics: Add missing generic type argument
Bernhard M. Wiedemann f155be
Bernhard M. Wiedemann f155be
---
Bernhard M. Wiedemann f155be
 folks/folks-generics.vapi |  2 +-
Bernhard M. Wiedemann f155be
 folks/small-set.c         | 15 ++++-----------
Bernhard M. Wiedemann f155be
 folks/small-set.h         |  5 ++++-
Bernhard M. Wiedemann f155be
 3 files changed, 9 insertions(+), 13 deletions(-)
Bernhard M. Wiedemann f155be
Bernhard M. Wiedemann f155be
diff --git a/folks/folks-generics.vapi b/folks/folks-generics.vapi
Bernhard M. Wiedemann f155be
index 389025b6..c8a06e96 100644
Bernhard M. Wiedemann f155be
--- a/folks/folks-generics.vapi
Bernhard M. Wiedemann f155be
+++ b/folks/folks-generics.vapi
Bernhard M. Wiedemann f155be
@@ -37,7 +37,7 @@ namespace Folks
Bernhard M. Wiedemann f155be
     internal SmallSet (owned Gee.HashDataFunc<G>? item_hash = null,
Bernhard M. Wiedemann f155be
         owned Gee.EqualDataFunc<G>? item_equals = null);
Bernhard M. Wiedemann f155be
 
Bernhard M. Wiedemann f155be
-    internal static SmallSet<G> copy (Gee.Iterable<G> iterable,
Bernhard M. Wiedemann f155be
+    internal static SmallSet<G> copy<G> (Gee.Iterable<G> iterable,
Bernhard M. Wiedemann f155be
         owned Gee.HashDataFunc<G>? item_hash = null,
Bernhard M. Wiedemann f155be
         owned Gee.EqualDataFunc<G>? item_equals = null);
Bernhard M. Wiedemann f155be
 
Bernhard M. Wiedemann f155be
diff --git a/folks/small-set.c b/folks/small-set.c
Bernhard M. Wiedemann f155be
index b5a19683..39790755 100644
Bernhard M. Wiedemann f155be
--- a/folks/small-set.c
Bernhard M. Wiedemann f155be
+++ b/folks/small-set.c
Bernhard M. Wiedemann f155be
@@ -337,7 +337,10 @@ _folks_small_set_new_take_array (GPtrArray *arr,
Bernhard M. Wiedemann f155be
  * Returns: (transfer full):
Bernhard M. Wiedemann f155be
  */
Bernhard M. Wiedemann f155be
 FolksSmallSet *
Bernhard M. Wiedemann f155be
-folks_small_set_copy (GeeIterable *iterable,
Bernhard M. Wiedemann f155be
+folks_small_set_copy (GType item_type,
Bernhard M. Wiedemann f155be
+    GBoxedCopyFunc item_dup,
Bernhard M. Wiedemann f155be
+    GDestroyNotify item_free,
Bernhard M. Wiedemann f155be
+    GeeIterable *iterable,
Bernhard M. Wiedemann f155be
     GeeHashDataFunc item_hash,
Bernhard M. Wiedemann f155be
     gpointer item_hash_data,
Bernhard M. Wiedemann f155be
     GDestroyNotify item_hash_data_free,
Bernhard M. Wiedemann f155be
@@ -347,10 +350,6 @@ folks_small_set_copy (GeeIterable *iterable,
Bernhard M. Wiedemann f155be
 {
Bernhard M. Wiedemann f155be
   FolksSmallSet *self;
Bernhard M. Wiedemann f155be
   GeeIterator *iter;
Bernhard M. Wiedemann f155be
-  GeeTraversableIface *traversable_iface;
Bernhard M. Wiedemann f155be
-  GType item_type;
Bernhard M. Wiedemann f155be
-  GBoxedCopyFunc item_dup;
Bernhard M. Wiedemann f155be
-  GDestroyNotify item_free;
Bernhard M. Wiedemann f155be
 
Bernhard M. Wiedemann f155be
   /* Deliberately not allowing for subclasses here: this class is not
Bernhard M. Wiedemann f155be
    * subclassable, and it's slower if we do check for subclasses. */
Bernhard M. Wiedemann f155be
@@ -376,12 +375,6 @@ folks_small_set_copy (GeeIterable *iterable,
Bernhard M. Wiedemann f155be
       return self;
Bernhard M. Wiedemann f155be
     }
Bernhard M. Wiedemann f155be
 
Bernhard M. Wiedemann f155be
-  traversable_iface = GEE_TRAVERSABLE_GET_INTERFACE (iterable);
Bernhard M. Wiedemann f155be
-  g_assert (traversable_iface != NULL);
Bernhard M. Wiedemann f155be
-  item_type = traversable_iface->get_g_type ((GeeTraversable *) iterable);
Bernhard M. Wiedemann f155be
-  item_dup = traversable_iface->get_g_dup_func ((GeeTraversable *) iterable);
Bernhard M. Wiedemann f155be
-  item_free = traversable_iface->get_g_destroy_func ((GeeTraversable *) iterable);
Bernhard M. Wiedemann f155be
-
Bernhard M. Wiedemann f155be
   self = folks_small_set_new (item_type, item_dup, item_free,
Bernhard M. Wiedemann f155be
       item_hash, item_hash_data, item_hash_data_free,
Bernhard M. Wiedemann f155be
       item_equals, item_equals_data, item_equals_data_free);
Bernhard M. Wiedemann f155be
diff --git a/folks/small-set.h b/folks/small-set.h
Bernhard M. Wiedemann f155be
index e61f387e..5df54ce3 100644
Bernhard M. Wiedemann f155be
--- a/folks/small-set.h
Bernhard M. Wiedemann f155be
+++ b/folks/small-set.h
Bernhard M. Wiedemann f155be
@@ -68,7 +68,10 @@ folks_small_set_empty (GType item_type,
Bernhard M. Wiedemann f155be
     GBoxedCopyFunc item_dup,
Bernhard M. Wiedemann f155be
     GDestroyNotify item_free);
Bernhard M. Wiedemann f155be
 
Bernhard M. Wiedemann f155be
-FolksSmallSet *folks_small_set_copy (GeeIterable *iterable,
Bernhard M. Wiedemann f155be
+FolksSmallSet *folks_small_set_copy (GType item_type,
Bernhard M. Wiedemann f155be
+    GBoxedCopyFunc item_dup,
Bernhard M. Wiedemann f155be
+    GDestroyNotify item_free,
Bernhard M. Wiedemann f155be
+    GeeIterable *iterable,
Bernhard M. Wiedemann f155be
     GeeHashDataFunc item_hash,
Bernhard M. Wiedemann f155be
     gpointer item_hash_data,
Bernhard M. Wiedemann f155be
     GDestroyNotify item_hash_data_free,
Bernhard M. Wiedemann f155be
-- 
Bernhard M. Wiedemann f155be
GitLab
Bernhard M. Wiedemann f155be