Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libshumate for openSUSE:Factory 
checked in at 2022-12-04 14:58:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libshumate (Old)
 and      /work/SRC/openSUSE:Factory/.libshumate.new.1835 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libshumate"

Sun Dec  4 14:58:05 2022 rev:5 rq:1039790 version:1.0.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/libshumate/libshumate.changes    2022-10-25 
11:18:51.365983538 +0200
+++ /work/SRC/openSUSE:Factory/.libshumate.new.1835/libshumate.changes  
2022-12-04 14:58:23.248281711 +0100
@@ -1,0 +2,7 @@
+Fri Dec  2 21:05:09 UTC 2022 - Bjørn Lie <bjorn....@gmail.com>
+
+- Update to version 1.0.3:
+  + Fix memory leaks.
+  + Remove old tiles more aggresively, speeding up zoom animations.
+
+-------------------------------------------------------------------

Old:
----
  libshumate-1.0.2.obscpio

New:
----
  libshumate-1.0.3.obscpio

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

Other differences:
------------------
++++++ libshumate.spec ++++++
--- /var/tmp/diff_new_pack.OQYXgu/_old  2022-12-04 14:58:23.932285651 +0100
+++ /var/tmp/diff_new_pack.OQYXgu/_new  2022-12-04 14:58:23.936285674 +0100
@@ -21,7 +21,7 @@
 %define soname libshumate-%{somajor}_%{sominor}-1
 
 Name:           libshumate
-Version:        1.0.2
+Version:        1.0.3
 Release:        0
 Summary:        C library providing a GtkWidget to display maps
 License:        LGPL-2.1-or-later

++++++ _service ++++++
--- /var/tmp/diff_new_pack.OQYXgu/_old  2022-12-04 14:58:23.964285836 +0100
+++ /var/tmp/diff_new_pack.OQYXgu/_new  2022-12-04 14:58:23.968285858 +0100
@@ -4,7 +4,7 @@
     <param name="url">https://gitlab.gnome.org/GNOME/libshumate.git</param>
     <param name="scm">git</param>
     <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
-    <param name="revision">refs/tags/1.0.2</param>
+    <param name="revision">refs/tags/1.0.3</param>
     <param name="versionrewrite-pattern">(.*)\+0</param>
     <param name="versionrewrite-replacement">\1</param>
   </service>

++++++ libshumate-1.0.2.obscpio -> libshumate-1.0.3.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/NEWS new/libshumate-1.0.3/NEWS
--- old/libshumate-1.0.2/NEWS   2022-10-22 12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/NEWS   2022-12-01 21:30:44.000000000 +0100
@@ -1,4 +1,10 @@
 =====================
+Version 1.0.3
+=====================
+ - Fix memory leaks
+ - Remove old tiles more aggresively, speeding up zoom animations
+
+=====================
 Version 1.0.2
 =====================
  - Avoid flickering when panning the map
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/meson.build 
new/libshumate-1.0.3/meson.build
--- old/libshumate-1.0.2/meson.build    2022-10-22 12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/meson.build    2022-12-01 21:30:44.000000000 +0100
@@ -1,6 +1,6 @@
 project(
   'libshumate', 'c',
-  version: '1.0.2',
+  version: '1.0.3',
   license: 'LGPLv2.1+',
   meson_version: '>= 0.53.0',
   default_options: [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/shumate/shumate-map-layer.c 
new/libshumate-1.0.3/shumate/shumate-map-layer.c
--- old/libshumate-1.0.2/shumate/shumate-map-layer.c    2022-10-22 
12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/shumate-map-layer.c    2022-12-01 
21:30:44.000000000 +0100
@@ -227,7 +227,7 @@
       g_hash_table_insert (self->tile_fill, g_object_ref (tile), cancellable);
     }
 
-  g_hash_table_insert (self->tile_children, pos, g_object_ref (tile));
+  g_hash_table_insert (self->tile_children, pos, tile);
   gtk_widget_queue_draw (GTK_WIDGET (self));
   g_signal_connect_object (tile, "notify::state", 
(GCallback)on_tile_notify_state, self, G_CONNECT_SWAPPED);
 }
@@ -293,20 +293,22 @@
 
   gboolean all_filled = TRUE;
 
-  /* First, remove all the tiles that aren't in bounds. For now, ignore tiles
-   * that aren't on the current zoom level--those are only removed once the
-   * current level is fully loaded */
+  /* First, remove all the tiles that aren't in bounds, or that are on the
+   * wrong zoom level and haven't finished loading */
   g_hash_table_iter_init (&iter, self->tile_children);
   while (g_hash_table_iter_next (&iter, &key, &value))
     {
       TileGridPosition *pos = key;
       ShumateTile *tile = value;
-
-      if ((pos->x < tile_initial_column
-          || pos->x >= tile_initial_column + required_columns
-          || pos->y < tile_initial_row
-          || pos->y >= tile_initial_row + required_rows)
-          && pos->zoom == zoom_level)
+      float size = powf (2, zoom_level - pos->zoom);
+      float x = pos->x * size;
+      float y = pos->y * size;
+
+      if (x + size <= tile_initial_column
+          || x >= tile_initial_column + required_columns
+          || y + size <= tile_initial_row
+          || y >= tile_initial_row + required_rows
+          || (pos->zoom != zoom_level && shumate_tile_get_state (tile) != 
SHUMATE_STATE_DONE))
         {
           remove_tile (self, tile, pos);
           g_hash_table_iter_remove (&iter);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/shumate/shumate-raster-renderer.c 
new/libshumate-1.0.3/shumate/shumate-raster-renderer.c
--- old/libshumate-1.0.2/shumate/shumate-raster-renderer.c      2022-10-22 
12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/shumate-raster-renderer.c      2022-12-01 
21:30:44.000000000 +0100
@@ -375,10 +375,13 @@
   ShumateRasterRenderer *self = g_task_get_source_object (task);
   ShumateTile *tile = g_task_get_task_data (task);
   GError *error = NULL;
+  g_autoptr(GBytes) bytes = NULL;
 
   g_ptr_array_remove_fast (self->tiles, tile);
 
-  if (!shumate_data_source_get_tile_data_finish (data_source, res, &error))
+  bytes = shumate_data_source_get_tile_data_finish (data_source, res, &error);
+
+  if (bytes == NULL)
     g_task_return_error (task, error);
   else
     {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/shumate/shumate-vector-renderer.c 
new/libshumate-1.0.3/shumate/shumate-vector-renderer.c
--- old/libshumate-1.0.2/shumate/shumate-vector-renderer.c      2022-10-22 
12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/shumate-vector-renderer.c      2022-12-01 
21:30:44.000000000 +0100
@@ -30,6 +30,7 @@
 #include <cairo/cairo.h>
 
 #include "vector/shumate-vector-render-scope-private.h"
+#include "vector/shumate-vector-symbol-info-private.h"
 #include "vector/shumate-vector-utils-private.h"
 #include "vector/shumate-vector-layer-private.h"
 #endif
@@ -552,10 +553,13 @@
   ShumateVectorRenderer *self = g_task_get_source_object (task);
   ShumateTile *tile = g_task_get_task_data (task);
   GError *error = NULL;
+  g_autoptr(GBytes) bytes = NULL;
 
   g_ptr_array_remove_fast (self->tiles, tile);
 
-  if (!shumate_data_source_get_tile_data_finish (data_source, res, &error))
+  bytes = shumate_data_source_get_tile_data_finish (data_source, res, &error);
+
+  if (bytes == NULL)
     g_task_return_error (task, error);
   else
     {
@@ -576,7 +580,7 @@
   cairo_surface_t *surface;
   gconstpointer data;
   gsize len;
-  g_autoptr(GPtrArray) symbols = g_ptr_array_new ();
+  g_autoptr(GPtrArray) symbols = g_ptr_array_new_with_free_func 
(shumate_vector_symbol_info_unref);
   int texture_size;
 
   g_assert (SHUMATE_IS_VECTOR_RENDERER (self));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libshumate-1.0.2/shumate/vector/shumate-vector-symbol-info-private.h 
new/libshumate-1.0.3/shumate/vector/shumate-vector-symbol-info-private.h
--- old/libshumate-1.0.2/shumate/vector/shumate-vector-symbol-info-private.h    
2022-10-22 12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/vector/shumate-vector-symbol-info-private.h    
2022-12-01 21:30:44.000000000 +0100
@@ -39,7 +39,7 @@
   double x;
   double y;
 
-  ShumateVectorLineString line;
+  ShumateVectorLineString *line;
   ShumateVectorPoint line_size;
   float line_length;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libshumate-1.0.2/shumate/vector/shumate-vector-symbol-info.c 
new/libshumate-1.0.3/shumate/vector/shumate-vector-symbol-info.c
--- old/libshumate-1.0.2/shumate/vector/shumate-vector-symbol-info.c    
2022-10-22 12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/vector/shumate-vector-symbol-info.c    
2022-12-01 21:30:44.000000000 +0100
@@ -27,11 +27,9 @@
 {
   g_assert (self);
   g_assert_cmpint (self->ref_count, ==, 0);
-
   g_clear_pointer (&self->text, g_free);
   g_clear_pointer (&self->text_font, g_free);
-  shumate_vector_line_string_clear (&self->line);
-
+  g_clear_pointer (&self->line, shumate_vector_line_string_free);
   g_free (self);
 }
 
@@ -90,10 +88,12 @@
                                             ShumateVectorLineString 
*linestring)
 {
   ShumateVectorPoint center;
-  shumate_vector_line_string_clear (&self->line);
-  self->line = *linestring;
-  shumate_vector_line_string_bounds (&self->line, &self->line_size, &center);
+  g_clear_pointer (&self->line, shumate_vector_line_string_free);
+  self->line = linestring;
+
+  shumate_vector_line_string_bounds (self->line, &self->line_size, &center);
   self->x = center.x;
   self->y = center.y;
-  self->line_length = shumate_vector_line_string_length (&self->line);
+  self->line_length = shumate_vector_line_string_length (self->line);
+  self->line_placement = TRUE;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libshumate-1.0.2/shumate/vector/shumate-vector-symbol-layer.c 
new/libshumate-1.0.3/shumate/vector/shumate-vector-symbol-layer.c
--- old/libshumate-1.0.2/shumate/vector/shumate-vector-symbol-layer.c   
2022-10-22 12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/vector/shumate-vector-symbol-layer.c   
2022-12-01 21:30:44.000000000 +0100
@@ -138,7 +138,6 @@
           for (j = 0; j < split_lines->len; j ++)
             {
               ShumateVectorLineString *linestring = (ShumateVectorLineString 
*)split_lines->pdata[j];
-              shumate_vector_line_string_simplify (linestring);
 
 #if 0
               /* visualize line simplification */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libshumate-1.0.2/shumate/vector/shumate-vector-symbol.c 
new/libshumate-1.0.3/shumate/vector/shumate-vector-symbol.c
--- old/libshumate-1.0.2/shumate/vector/shumate-vector-symbol.c 2022-10-22 
12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/vector/shumate-vector-symbol.c 2022-12-01 
21:30:44.000000000 +0100
@@ -98,7 +98,6 @@
       g_autoptr(PangoLayout) layout = pango_layout_new (context);
       g_autoptr(PangoLayoutIter) iter = NULL;
       PangoGlyphItem *current_item;
-      PangoGlyphString *glyph_string;
       int i;
 
       self->glyphs = g_array_new (FALSE, FALSE, sizeof (Glyph));
@@ -110,7 +109,7 @@
 
       pango_layout_get_size (layout, &self->glyphs_length, NULL);
       self->glyphs_length /= PANGO_SCALE;
-      self->line_length = shumate_vector_line_string_length 
(&self->symbol_info->line);
+      self->line_length = shumate_vector_line_string_length 
(self->symbol_info->line);
 
       do {
         current_item = pango_layout_iter_get_run (iter);
@@ -122,6 +121,7 @@
           {
             GskRenderNode *node;
             Glyph glyph;
+            PangoGlyphString *glyph_string;
 
             glyph_string = pango_glyph_string_new ();
             pango_glyph_string_set_size (glyph_string, 1);
@@ -137,6 +137,8 @@
             glyph.node = node;
             glyph.width = glyph_string->glyphs[0].geometry.width / (double) 
PANGO_SCALE;
             g_array_append_vals (self->glyphs, &glyph, 1);
+
+            pango_glyph_string_free (glyph_string);
           }
       } while (pango_layout_iter_next_run (iter));
     }
@@ -281,7 +283,7 @@
 
       gtk_snapshot_rotate (snapshot, rotation * 180 / G_PI);
 
-      shumate_vector_point_iter_init (&iter, &self->symbol_info->line);
+      shumate_vector_point_iter_init (&iter, self->symbol_info->line);
       shumate_vector_point_iter_advance (&iter, (self->line_length - 
self->glyphs_length / scale) / 2.0);
 
       /* If the label is upside down on average, draw it the other way around 
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libshumate-1.0.2/shumate/vector/shumate-vector-utils-private.h 
new/libshumate-1.0.3/shumate/vector/shumate-vector-utils-private.h
--- old/libshumate-1.0.2/shumate/vector/shumate-vector-utils-private.h  
2022-10-22 12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/vector/shumate-vector-utils-private.h  
2022-12-01 21:30:44.000000000 +0100
@@ -92,7 +92,7 @@
                                                        double                  
distance);
 double shumate_vector_point_iter_get_current_angle    (ShumateVectorPointIter 
*iter);
 
-void shumate_vector_line_string_clear                 (ShumateVectorLineString 
*linestring);
+void   shumate_vector_line_string_free                (ShumateVectorLineString 
*linestring);
 double shumate_vector_line_string_length              (ShumateVectorLineString 
*linestring);
 void   shumate_vector_line_string_bounds              (ShumateVectorLineString 
*linestring,
                                                        ShumateVectorPoint      
*radius_out,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libshumate-1.0.2/shumate/vector/shumate-vector-utils.c 
new/libshumate-1.0.3/shumate/vector/shumate-vector-utils.c
--- old/libshumate-1.0.2/shumate/vector/shumate-vector-utils.c  2022-10-22 
12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/shumate/vector/shumate-vector-utils.c  2022-12-01 
21:30:44.000000000 +0100
@@ -336,10 +336,10 @@
 
 
 void
-shumate_vector_line_string_clear (ShumateVectorLineString *linestring)
+shumate_vector_line_string_free (ShumateVectorLineString *linestring)
 {
   g_clear_pointer (&linestring->points, g_free);
-  linestring->n_points = 0;
+  g_free (linestring);
 }
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/tests/coordinate.c 
new/libshumate-1.0.3/tests/coordinate.c
--- old/libshumate-1.0.2/tests/coordinate.c     2022-10-22 12:26:42.000000000 
+0200
+++ new/libshumate-1.0.3/tests/coordinate.c     2022-12-01 21:30:44.000000000 
+0100
@@ -41,7 +41,6 @@
 main (int argc, char *argv[])
 {
   g_test_init (&argc, &argv, NULL);
-  gtk_init ();
 
   g_test_add_func ("/coordinate/convert", test_coordinate_convert);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/tests/data/style.json 
new/libshumate-1.0.3/tests/data/style.json
--- old/libshumate-1.0.2/tests/data/style.json  2022-10-22 12:26:42.000000000 
+0200
+++ new/libshumate-1.0.3/tests/data/style.json  2022-12-01 21:30:44.000000000 
+0100
@@ -1,4 +1,10 @@
 {
+  "sources": {
+    "-": {
+      "type": "vector",
+      "tiles": [""]
+    }
+  },
   "layers": [
     {
       "type": "background",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/tests/file-cache.c 
new/libshumate-1.0.3/tests/file-cache.c
--- old/libshumate-1.0.2/tests/file-cache.c     2022-10-22 12:26:42.000000000 
+0200
+++ new/libshumate-1.0.3/tests/file-cache.c     2022-12-01 21:30:44.000000000 
+0100
@@ -96,7 +96,6 @@
 main (int argc, char *argv[])
 {
   g_test_init (&argc, &argv, G_TEST_OPTION_ISOLATE_DIRS, NULL);
-  gtk_init ();
 
   g_test_add_func ("/file-cache/store-retrieve", 
test_file_cache_store_retrieve);
   g_test_add_func ("/file-cache/miss", test_file_cache_miss);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/tests/memory-cache.c 
new/libshumate-1.0.3/tests/memory-cache.c
--- old/libshumate-1.0.2/tests/memory-cache.c   2022-10-22 12:26:42.000000000 
+0200
+++ new/libshumate-1.0.3/tests/memory-cache.c   2022-12-01 21:30:44.000000000 
+0100
@@ -17,8 +17,6 @@
   g_autoptr(ShumateTile) tile = shumate_tile_new_full (0, 0, 256, 0);
   g_autoptr(GdkPaintable) paintable = create_paintable ();
 
-  g_object_ref_sink (tile);
-
   /* Store the tile */
   shumate_tile_set_paintable (tile, paintable);
   shumate_memory_cache_store_tile (cache, tile, "A");
@@ -38,9 +36,6 @@
   g_autoptr(ShumateTile) tile2 = shumate_tile_new_full (0, 0, 256, 1);
   g_autoptr(GdkPaintable) paintable = create_paintable ();
 
-  g_object_ref_sink (tile1);
-  g_object_ref_sink (tile2);
-
   /* Store a tile */
   shumate_tile_set_paintable (tile1, paintable);
   shumate_memory_cache_store_tile (cache, tile1, "A");
@@ -61,9 +56,6 @@
   g_autoptr(GdkPaintable) paintable1 = create_paintable ();
   g_autoptr(GdkPaintable) paintable2 = create_paintable ();
 
-  g_object_ref_sink (tile1);
-  g_object_ref_sink (tile2);
-
   /* Store the tiles */
   shumate_tile_set_paintable (tile1, paintable1);
   shumate_tile_set_paintable (tile2, paintable2);
@@ -86,8 +78,6 @@
   g_autoptr(ShumateMemoryCache) cache = shumate_memory_cache_new_full (3);
   g_autoptr(ShumateTile) tile = shumate_tile_new_full (0, 0, 256, 0);
 
-  g_object_ref_sink (tile);
-
   /* Store a few tiles */
   shumate_memory_cache_store_tile (cache, tile, "A");
   shumate_memory_cache_store_tile (cache, tile, "B");
@@ -117,8 +107,6 @@
   g_autoptr(ShumateMemoryCache) cache = shumate_memory_cache_new_full (100);
   g_autoptr(ShumateTile) tile = shumate_tile_new_full (0, 0, 256, 0);
 
-  g_object_ref_sink (tile);
-
   /* Store a tile */
   shumate_memory_cache_store_tile (cache, tile, "A");
 
@@ -134,7 +122,6 @@
 main (int argc, char *argv[])
 {
   g_test_init (&argc, &argv, NULL);
-  gtk_init ();
 
   g_test_add_func ("/file-cache/store-retrieve", 
test_memory_cache_store_retrieve);
   g_test_add_func ("/file-cache/miss", test_memory_cache_miss);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/tests/meson.build 
new/libshumate-1.0.3/tests/meson.build
--- old/libshumate-1.0.2/tests/meson.build      2022-10-22 12:26:42.000000000 
+0200
+++ new/libshumate-1.0.3/tests/meson.build      2022-12-01 21:30:44.000000000 
+0100
@@ -6,18 +6,21 @@
   'G_TEST_BUILDDIR=@0@'.format(meson.current_build_dir()),
 ]
 
-tests = [
+valgrind_tests = [
   'coordinate',
+  'memory-cache',
+  'viewport',
+]
+
+tests = [
   'file-cache',
   'marker',
   'map',
   'marker-layer',
-  'memory-cache',
-  'viewport',
 ]
 
 if get_option('vector_renderer')
-  tests += [
+  valgrind_tests += [
     'vector-expression',
     'vector-style',
     'vector-value',
@@ -26,6 +29,23 @@
 
 subdir('data')
 
+valgrind = find_program('valgrind', required: false)
+
+if valgrind.found()
+  foreach test : valgrind_tests
+    executable = executable(
+      test,
+      test_resources,
+      '@0@.c'.format(test),
+      dependencies: [libshumate_dep],
+    )
+
+    test(test, valgrind, args: ['--leak-check=full', '--error-exitcode=1', 
executable], env: test_env)
+  endforeach
+else
+  tests += valgrind_tests
+endif
+
 foreach test : tests
   executable = executable(
     test,
@@ -35,4 +55,4 @@
   )
 
   test(test, executable, env: test_env)
-endforeach
+endforeach
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/tests/vector-expression.c 
new/libshumate-1.0.3/tests/vector-expression.c
--- old/libshumate-1.0.2/tests/vector-expression.c      2022-10-22 
12:26:42.000000000 +0200
+++ new/libshumate-1.0.3/tests/vector-expression.c      2022-12-01 
21:30:44.000000000 +0100
@@ -200,6 +200,8 @@
   g_assert_true  (filter_with_scope (&scope, "[\"!has\", \"name:en\"]"));
   g_assert_true  (filter_with_scope (&scope, "[\"==\", \"$type\", 
\"Point\"]"));
   g_assert_true  (filter_with_scope (&scope, "[\"==\", \"zoom\", 10]"));
+
+  vector_tile__tile__free_unpacked (scope.tile, NULL);
 }
 
 
@@ -235,6 +237,7 @@
   ShumateVectorRenderScope scope;
   g_autoptr(JsonNode) node = json_from_string ("\"{name}\"", NULL);
   g_autoptr(ShumateVectorExpression) expression;
+  g_autofree char *result = NULL;
 
   expression = shumate_vector_expression_from_json (node, &error);
   g_assert_no_error (error);
@@ -251,7 +254,10 @@
   g_assert_true (shumate_vector_render_scope_find_layer (&scope, 
"helloworld"));
   scope.feature = scope.layer->features[0];
 
-  g_assert_cmpstr (shumate_vector_expression_eval_string (expression, &scope, 
NULL), ==, "Hello, world!");
+  result = shumate_vector_expression_eval_string (expression, &scope, NULL);
+  g_assert_cmpstr (result, ==, "Hello, world!");
+
+  vector_tile__tile__free_unpacked (scope.tile, NULL);
 }
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libshumate-1.0.2/tests/viewport.c 
new/libshumate-1.0.3/tests/viewport.c
--- old/libshumate-1.0.2/tests/viewport.c       2022-10-22 12:26:42.000000000 
+0200
+++ new/libshumate-1.0.3/tests/viewport.c       2022-12-01 21:30:44.000000000 
+0100
@@ -4,7 +4,7 @@
 static void
 test_viewport_zoom_level_min (void)
 {
-  ShumateViewport *viewport;
+  g_autoptr(ShumateViewport) viewport = NULL;
 
   viewport = shumate_viewport_new ();
   g_assert_cmpuint (shumate_viewport_get_min_zoom_level (viewport), ==, 0);
@@ -27,7 +27,7 @@
 static void
 test_viewport_zoom_level_max (void)
 {
-  ShumateViewport *viewport;
+  g_autoptr(ShumateViewport) viewport = NULL;
 
   viewport = shumate_viewport_new ();
   g_assert_cmpuint (shumate_viewport_get_max_zoom_level (viewport), ==, 20);
@@ -44,7 +44,7 @@
 static void
 test_viewport_zoom_level_clamp (void)
 {
-  ShumateViewport *viewport;
+  g_autoptr(ShumateViewport) viewport = NULL;
 
   viewport = shumate_viewport_new ();
   g_assert_cmpuint (shumate_viewport_get_min_zoom_level (viewport), ==, 0);
@@ -117,7 +117,7 @@
 static void
 test_viewport_zoom_level_notify (void)
 {
-  ShumateViewport *viewport;
+  g_autoptr(ShumateViewport) viewport = NULL;
   guint i;
 
   viewport = g_object_connect (shumate_viewport_new (),
@@ -164,7 +164,6 @@
 main (int argc, char *argv[])
 {
   g_test_init (&argc, &argv, NULL);
-  gtk_init ();
 
   g_test_add_func ("/viewport/zoom-level/min", test_viewport_zoom_level_min);
   g_test_add_func ("/viewport/zoom-level/max", test_viewport_zoom_level_max);

++++++ libshumate.obsinfo ++++++
--- /var/tmp/diff_new_pack.OQYXgu/_old  2022-12-04 14:58:24.156286942 +0100
+++ /var/tmp/diff_new_pack.OQYXgu/_new  2022-12-04 14:58:24.160286965 +0100
@@ -1,5 +1,5 @@
 name: libshumate
-version: 1.0.2
-mtime: 1666434402
-commit: bcaeede96beb0ede116343aada1a25bab2a16ea4
+version: 1.0.3
+mtime: 1669926644
+commit: 55d89e24de5086404b996a73e94cd56ee2e9541a
 

Reply via email to