!6 Version upgrade to cheese-3.38.0

From: @yangl777
Reviewed-by: @orange-snn
Signed-off-by: @orange-snn
This commit is contained in:
openeuler-ci-bot 2021-02-03 11:23:13 +08:00 committed by Gitee
commit 883274845a
4 changed files with 103 additions and 9 deletions

View File

@ -0,0 +1,88 @@
From e7046d564a6f76c1af8f5640ac9c569e07284ec0 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Fri, 18 Sep 2020 12:06:45 +0200
Subject: [PATCH] Fix infinite loop if thumbnailer is not available
The code in cheese_thumb_view_idle_append_item() in
src/thumbview/cheese-thumb-view.c didn't pop the list of items to
thumbnail if thumbnailing failed.
#0 0x00007f4a60e55314 in open64 () at /lib64/libc.so.6
#1 0x00007f4a60de6386 in _IO_file_open () at /lib64/libc.so.6
#2 0x00007f4a60de655a in __GI__IO_file_fopen () at /lib64/libc.so.6
#3 0x00007f4a60dd9aad in __fopen_internal () at /lib64/libc.so.6
#4 0x00007f4a6157a43f in gdk_pixbuf_new_from_file () at /lib64/libgdk_pixbuf-2.0.so.0
#5 0x00007f4a61e84b3a in gnome_desktop_thumbnail_factory_lookup () at /lib64/libgnome-desktop-3.so.19
#6 0x000055cef476046f in cheese_thumb_view_idle_append_item ()
#7 0x00007f4a6124f47b in g_idle_dispatch () at /lib64/libglib-2.0.so.0
#8 0x00007f4a612537af in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#9 0x00007f4a61253b38 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#10 0x00007f4a61253c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#11 0x00007f4a6146a7ca in g_application_run () at /lib64/libgio-2.0.so.0
#12 0x000055cef4758547 in _vala_main ()
#13 0x00007f4a60d8a042 in __libc_start_main () at /lib64/libc.so.6
#14 0x000055cef47554be in _start ()
#0 0x00007f4a60ec562d in __strlen_avx2 () at /lib64/libc.so.6
#1 0x00007f4a61275de8 in g_str_has_suffix () at /lib64/libglib-2.0.so.0
#2 0x00007f4a618c0072 in icon_name_is_symbolic () at /lib64/libgtk-3.so.0
#3 0x00007f4a618c00b1 in theme_dir_get_icon_suffix () at /lib64/libgtk-3.so.0
#4 0x00007f4a618c32ed in theme_lookup_icon () at /lib64/libgtk-3.so.0
#5 0x00007f4a618c3adf in real_choose_icon () at /lib64/libgtk-3.so.0
#6 0x00007f4a618c4762 in gtk_icon_theme_lookup_icon_for_scale () at /lib64/libgtk-3.so.0
#7 0x00007f4a618c5105 in gtk_icon_theme_load_icon_for_scale () at /lib64/libgtk-3.so.0
#8 0x000055cef47605c9 in cheese_thumb_view_idle_append_item ()
#9 0x00007f4a6124f47b in g_idle_dispatch () at /lib64/libglib-2.0.so.0
#10 0x00007f4a612537af in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#11 0x00007f4a61253b38 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#12 0x00007f4a61253c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#13 0x00007f4a6146a7d8 in g_application_run () at /lib64/libgio-2.0.so.0
#14 0x000055cef4758547 in _vala_main ()
#15 0x00007f4a60d8a042 in __libc_start_main () at /lib64/libc.so.6
#16 0x000055cef47554be in _start ()
Closes: #81
---
src/thumbview/cheese-thumb-view.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/thumbview/cheese-thumb-view.c b/src/thumbview/cheese-thumb-view.c
index 1d2d88f5..232fd4b6 100644
--- a/src/thumbview/cheese-thumb-view.c
+++ b/src/thumbview/cheese-thumb-view.c
@@ -92,7 +92,7 @@ GtkWidget * cheese_thumb_view_new (void);
static gboolean
cheese_thumb_view_idle_append_item (gpointer data)
{
- CheeseThumbViewIdleData *item = g_queue_peek_head (data);
+ CheeseThumbViewIdleData *item = g_queue_pop_head (data);
CheeseThumbView *thumb_view;
CheeseThumbViewPrivate *priv;
@@ -119,6 +119,7 @@ cheese_thumb_view_idle_append_item (gpointer data)
if (!info)
{
g_warning ("Invalid filename\n");
+ g_slice_free (CheeseThumbViewIdleData, item);
return TRUE;
}
g_file_info_get_modification_time (info, &mtime);
@@ -167,6 +168,7 @@ cheese_thumb_view_idle_append_item (gpointer data)
if (error)
{
g_warning ("%s", error->message);
+ g_slice_free (CheeseThumbViewIdleData, item);
return TRUE;
}
}
@@ -183,7 +185,6 @@ cheese_thumb_view_idle_append_item (gpointer data)
g_object_unref (pixbuf);
g_object_unref (file);
g_slice_free (CheeseThumbViewIdleData, item);
- g_queue_pop_head (data);
return TRUE;
}
--
2.28.0

Binary file not shown.

BIN
cheese-3.38.0.tar.xz Normal file

Binary file not shown.

View File

@ -1,18 +1,21 @@
Name: cheese
Version: 3.32.0
Release: 2
Version: 3.38.0
Release: 1
Epoch: 2
Summary: Take photos and videos with webcam
License: GPLv2+
URL: https://wiki.gnome.org/Apps/Cheese
Source0: https://download.gnome.org/sources/%{name}/3.32/%{name}-%{version}.tar.xz
Source0: https://download.gnome.org/sources/%{name}/3.38/%{name}-%{version}.tar.xz
BuildRequires: chrpath desktop-file-utils docbook-dtds docbook-style-xsl gettext intltool
Patch0001: Fix-infinite-loop-if-thumbnailer-is-not-available.patch
BuildRequires: chrpath desktop-file-utils docbook-dtds docbook-style-xsl gettext
BuildRequires: itstool libXtst-devel libappstream-glib libxslt clutter-devel clutter-gst3-devel
BuildRequires: clutter-gtk-devel gdk-pixbuf2-devel glib2-devel gnome-desktop3-devel vala
BuildRequires: gobject-introspection-devel gstreamer1-plugins-base-devel libcanberra-devel
BuildRequires: gstreamer1-plugins-bad-free-devel gtk3-devel libX11-devel
BuildRequires: meson gtk-doc
Requires: gstreamer1-plugins-good gstreamer1-plugins-bad-free gnome-video-effects
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
@ -46,11 +49,11 @@ are contained in %{name}-devel package.
%autosetup -n %{name}-%{version} -p1
%build
%configure --enable-static
%make_build V=1
%meson -Dtests=false
%meson_build
%install
make install DESTDIR=%{buildroot}
%meson_install
%delete_la
%find_lang %{name} --with-gnome
@ -61,6 +64,7 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/libcheese-gtk.so.*
%check
desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/org.gnome.Cheese.desktop
%meson_test
%files
%doc AUTHORS
@ -68,7 +72,7 @@ desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/org.gnome.Cheese.d
%{_datadir}/icons/hicolor/*
%{_datadir}/dbus-1/services/org.gnome.Cheese.service
%{_datadir}/applications/org.gnome.Cheese.desktop
%{_datadir}/appdata/org.gnome.Cheese.appdata.xml
%{_datadir}/metainfo/org.gnome.Cheese.appdata.xml
%files libs -f cheese.lang
%license COPYING
@ -82,7 +86,6 @@ desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/org.gnome.Cheese.d
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_includedir}/cheese/*.h
%{_libdir}/*.a
%files help
%doc README
@ -90,6 +93,9 @@ desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/org.gnome.Cheese.d
%{_mandir}/man1/cheese.1.gz
%changelog
* Fri Jan 29 2021 yanglu <yanglu60@huawei.com> - 2:3.38.0-1
- update version
* Mon Sep 07 2020 zhanzhimin <zhanzhimin@huawei.com> - 2:3.32.0-2
- update source0