Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package pan for openSUSE:Factory checked in at 2023-01-19 16:44:14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/pan (Old) and /work/SRC/openSUSE:Factory/.pan.new.32243 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pan" Thu Jan 19 16:44:14 2023 rev:18 rq:1059516 version:0.154 Changes: -------- --- /work/SRC/openSUSE:Factory/pan/pan.changes 2022-11-21 15:29:58.344763079 +0100 +++ /work/SRC/openSUSE:Factory/.pan.new.32243/pan.changes 2023-01-19 16:44:31.625869859 +0100 @@ -1,0 +2,8 @@ +Wed Jan 18 07:52:36 UTC 2023 - Atri Bhattacharya <[email protected]> + +- Update to version 0.154: + * Fix a regression from v0.153 where pan can segfault when + reading groups (glgo#GNOME/pan#156). + * A few GTK2 related cleanups. + +------------------------------------------------------------------- Old: ---- pan-v0.153.tar.bz2 New: ---- pan-v0.154.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ pan.spec ++++++ --- /var/tmp/diff_new_pack.eB6XKR/_old 2023-01-19 16:44:32.197872837 +0100 +++ /var/tmp/diff_new_pack.eB6XKR/_new 2023-01-19 16:44:32.201872858 +0100 @@ -1,7 +1,7 @@ # # spec file for package pan # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: pan -Version: 0.153 +Version: 0.154 Release: 0 Summary: A Newsreader for GNOME License: GPL-2.0-or-later ++++++ pan-v0.153.tar.bz2 -> pan-v0.154.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pan-v0.153/NEWS new/pan-v0.154/NEWS --- old/pan-v0.153/NEWS 2022-11-13 14:42:55.000000000 +0100 +++ new/pan-v0.154/NEWS 2023-01-18 08:52:31.000000000 +0100 @@ -1,3 +1,13 @@ +0.154 "Izium" (ÐзÑм) - 2023-01-05 + + This release fixes a regression from v0.153 where pan can segfault when reading groups. See issue #156 for details. + + Some other cleanup related to gtk2 were done. + + Contributors to this release: + + Dominique Dumont, Thomas Tanner + 0.153 "Mariupol" (ÐаÑÑÑÌполÑ) - 2022-11-13 I botched previous release. This release is identical to 0.152 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pan-v0.153/README.org new/pan-v0.154/README.org --- old/pan-v0.153/README.org 2022-11-13 14:42:55.000000000 +0100 +++ new/pan-v0.154/README.org 2023-01-05 18:33:42.000000000 +0100 @@ -47,7 +47,7 @@ for enhanced privacy and security. - Connections can be encrypted with the TLS protocol. -** RELEASE NOTES +** Release Notes - You are advised to back up your $PAN_HOME directory (by default, =$HOME/.pan2=) before upgrading Pan. @@ -64,7 +64,7 @@ Pan with support for that feature, and then enable it in Edit -> Preferences -> Miscellaneous -> 'Save passwords in password storage'. -** REQUIREMENTS +** Requirements Pan requires these libraries: @@ -76,12 +76,9 @@ The following libraries add extra features but are optional: - [[http://gtkspell.sourceforge.net][GtkSpell 3]] 2.0.16 or higher for spellchecker support - (GtkSpell 2.0.7 or higher when using GTK 2) - [[http://www.abisource.com/projects/enchant/][Enchant]] 2.2.3 or higher for spellchecker support - (Enchant 1.6.0 or higher when using GTK 2) - [[http://www.galago-project.org/news/index.php][libnotify]] 0.4.1 or higher for notifications - [[https://developer.gnome.org/libsecret/][libsecret]] 0.16 or higher and [[https://developer.gnome.org/gcr/][gcr]] 3.20 or higher for password storage - ([[https://wiki.gnome.org/Projects/GnomeKeyring][GNOME Keyring]] 3.2.0 or higher when using GTK 2) - [[http://www.freedesktop.org/wiki/Software/dbus][D-Bus]] to support running multiple Pan instances - [[http://www.gnu.org/software/gnutls/][GnuTLS]] 3.0.0 or higher for encrypted connections (TLS 1.x) - [[https://wiki.gnome.org/Apps/Yelp/Tools][Yelp Tools]] for built-in user manual @@ -98,7 +95,7 @@ ./configure --help #+end_src -* INSTALLATION +* Installation Run the following command to build Pan configured with the default options: @@ -123,16 +120,16 @@ make install #+end_src -* UPGRADING +* Upgrading Upgrading typically requires that you do the exact same procedure as when installing Pan. -* HOW TO REPORT BUGS +* How to report bugs For details on how to report bugs, see [[http://pan.rebelbase.com/bugs/][Pan bug report page]]. -* HELP WANTED +* Help Wanted Several areas are in need of work: @@ -140,7 +137,7 @@ warnings. I'd welcome patches there. - The [[https://gitlab.gnome.org/GNOME/pan/-/wikis/home][Wiki page]] on Gitlab is empty. Help is welcome there. -* CONTACT +* Contact ** Mailing lists @@ -164,7 +161,7 @@ - gmane.comp.gnome.apps.pan.user - gmane.comp.gnome.apps.pan.devel -* LINKS +* Links - [[http://www.gtk.org/][GTK]] - [[http://www.gnome.org/][GNOME]] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pan-v0.153/configure.ac new/pan-v0.154/configure.ac --- old/pan-v0.153/configure.ac 2022-11-13 14:42:55.000000000 +0100 +++ new/pan-v0.154/configure.ac 2023-01-05 18:33:42.000000000 +0100 @@ -1,12 +1,12 @@ -AC_INIT([Pan],[0.153],[https://gitlab.gnome.org/GNOME/pan/issues],[pan],[http://pan.rebelbase.com/]) +AC_INIT([Pan],[0.154],[https://gitlab.gnome.org/GNOME/pan/issues],[pan],[https://gitlab.gnome.org/GNOME/pan]) AC_DEFINE(VERSION_MAJOR,0,[Major part of version number]) -AC_DEFINE(VERSION_MINOR,153,[Minor part of version number]) +AC_DEFINE(VERSION_MINOR,154,[Minor part of version number]) AC_DEFINE(VERSION_REVISION,0,[Revision part of version number]) -AC_DEFINE(VERSION_TITLE,["Mariupol"],[Release Name]) +AC_DEFINE(VERSION_TITLE,["Izium"],[Release Name]) AC_PREREQ([2.71]) dnl Get git info for pan-git.version -GIT_HASH='c5405f5' +GIT_HASH='517acf4' if test ! '0' \< $GIT_HASH ; then dnl git-dir is used for building outside the src tree GIT_HASH=`git --git-dir=$srcdir/.git log -1 --pretty=format:%h 2> /dev/null` @@ -158,26 +158,14 @@ dnl WebKitGTK support AC_ARG_WITH([webkit], AS_HELP_STRING([--with-webkit],[enable WebKitGTK support (experimental, normally: no)]), [want_webkit=$withval], [want_webkit=no]) -if test "x$want_gtk2" = "xyes" ; then - if test "x$want_webkit" = "xyes" ; then - PKG_CHECK_MODULES([WEBKITGTK], [webkitgtk-1.0 >= $WEBKIT_REQUIRED], - [ - AC_DEFINE(HAVE_WEBKIT,[1],[WebKit support (1.0) for embedded HTML]) - ], - [ - AC_MSG_RESULT(no) - ]) - fi -else - if test "x$want_webkit" = "xyes" ; then - PKG_CHECK_MODULES([WEBKITGTK],[webkitgtk-3.0 >= $WEBKIT_REQUIRED], - [ - AC_DEFINE(HAVE_WEBKIT,[1],[WebKit support (3.0) for embedded HTML]) - ], - [ - AC_MSG_RESULT(no) - ]) - fi +if test "x$want_webkit" = "xyes" ; then + PKG_CHECK_MODULES([WEBKITGTK],[webkitgtk-3.0 >= $WEBKIT_REQUIRED], + [ + AC_DEFINE(HAVE_WEBKIT,[1],[WebKit support (3.0) for embedded HTML]) + ], + [ + AC_MSG_RESULT(no) + ]) fi dnl GnuTLS support @@ -209,25 +197,17 @@ AC_SUBST([LIBNOTIFY_LIBS]) fi -dnl Check for libsecret and gcr (GTK 3 only) or GNOME Keyring if user-enabled for password storage +dnl Check for libsecret and gcr if user-enabled for password storage AC_ARG_ENABLE([gkr], AS_HELP_STRING([--enable-gkr],[enable GNOME Keyring or libsecret support (normally: no)]),[enable_gkr=$enableval],[enable_gkr=no]) if test "x$enable_gkr" = "xyes" ; then - if test "x$want_gtk2" = "xyes" ; then - PKG_CHECK_MODULES([LIBGNOME_KEYRING_1],[gnome-keyring-1 >= $LIBGKR_REQUIRED], - [LIBSECRET_VER=`pkg-config --modversion gnome-keyring-1` - gkr_msg="yes ($LIBSECRET_VER)" - AC_DEFINE(HAVE_GKR,[1],[GNOME Keyring or libsecret support for password storage])], - [gkr_msg=no - AC_MSG_RESULT(no)]) - else - PKG_CHECK_MODULES([LIBGNOME_KEYRING_1],[libsecret-1 >= $LIBSECRET_REQUIRED gcr-3 >= $GCR_REQUIRED], - [LIBSECRET_VER=`pkg-config --modversion libsecret-1 gcr-3 | xargs` - gkr_msg="yes ($LIBSECRET_VER)" - AC_DEFINE(HAVE_GKR,[1],[GNOME Keyring or libsecret support for password storage])], - [gkr_msg=no - AC_MSG_RESULT(no)]) - fi + PKG_CHECK_MODULES([LIBGNOME_KEYRING_1],[libsecret-1 >= $LIBSECRET_REQUIRED gcr-3 >= $GCR_REQUIRED], + [LIBSECRET_VER=`pkg-config --modversion libsecret-1 gcr-3 | xargs` + gkr_msg="yes ($LIBSECRET_VER)" + AC_DEFINE(HAVE_GKR,[1],[GNOME Keyring or libsecret support for password storage])], + [gkr_msg=no + AC_MSG_RESULT(no)]) + AC_SUBST([LIBGNOME_KEYRING_1_CFLAGS]) AC_SUBST([LIBGNOME_KEYRING_1_LIBS]) fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pan-v0.153/pan/general/article_number.h new/pan-v0.154/pan/general/article_number.h --- old/pan-v0.153/pan/general/article_number.h 2022-11-13 14:42:55.000000000 +0100 +++ new/pan-v0.154/pan/general/article_number.h 2023-01-05 18:33:42.000000000 +0100 @@ -46,9 +46,10 @@ return res; } - Article_Count operator-=(Article_Count const &sub) const + Article_Count & operator-=(Article_Count const &rhs) { - return static_cast<Article_Count>(val_ - sub.val_); + val_ -= rhs.val_; + return *this; } Article_Count & operator+=(Article_Count const &rhs) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pan-v0.153/pan/gui/group-pane.cc new/pan-v0.154/pan/gui/group-pane.cc --- old/pan-v0.153/pan/gui/group-pane.cc 2022-11-13 14:42:55.000000000 +0100 +++ new/pan-v0.154/pan/gui/group-pane.cc 2023-01-05 18:33:42.000000000 +0100 @@ -159,9 +159,7 @@ { GroupPane * self (static_cast<GroupPane*>(pane_g)); GtkWidget * menu (self->_action_manager.get_action_widget ("/group-pane-popup")); - gtk_menu_popup (GTK_MENU(menu), NULL, NULL, NULL, NULL, - (event ? event->button : 0), - (event ? event->time : 0)); + gtk_menu_popup_at_pointer (GTK_MENU(menu),(GdkEvent*) event); } namespace @@ -613,30 +611,10 @@ GdkEventFocus * , gpointer ) { - gtk_widget_override_color(w, GTK_STATE_FLAG_NORMAL, NULL); set_search_entry (w, search_text.c_str()); return false; } - void refresh_search_entry (GtkWidget * w) - { - if (search_text.empty() && !gtk_widget_has_focus(w)) - { - GdkRGBA c; - gdk_rgba_parse (&c, "0xAAA"); - gtk_widget_override_color(w, GTK_STATE_FLAG_NORMAL, &c); - set_search_entry (w, _(mode_strings[mode])); - } - } - - gboolean search_entry_focus_out_cb (GtkWidget * w, - GdkEventFocus * , - gpointer ) - { - refresh_search_entry (w); - return false; - } - void search_activate (GroupPane * pane) { pane->set_filter (search_text, mode); @@ -657,10 +635,10 @@ remove_activate_soon_tag (); } - void entry_icon_released (GtkEntry*, GtkEntryIconPosition icon_pos, GdkEventButton *, gpointer menu) + void entry_icon_released (GtkEntry*, GtkEntryIconPosition icon_pos, GdkEventButton* event, gpointer menu) { if (icon_pos == GTK_ENTRY_ICON_PRIMARY) - gtk_menu_popup (GTK_MENU(menu), nullptr, nullptr, nullptr, nullptr, 0, gtk_get_current_event_time()); + gtk_menu_popup_at_pointer (GTK_MENU(menu), (GdkEvent*) event); } void clear_button_clicked_cb (GtkEntry * e, GtkEntryIconPosition icon_pos, GdkEventButton *, gpointer pane_gpointer) @@ -668,7 +646,6 @@ if (icon_pos == GTK_ENTRY_ICON_SECONDARY) { set_search_entry (GTK_WIDGET(e), ""); - refresh_search_entry (GTK_WIDGET(e)); search_text.clear (); search_entry_activated (NULL, pane_gpointer); } @@ -701,7 +678,6 @@ if (gtk_check_menu_item_get_active (menu_item)) { mode = GPOINTER_TO_INT (g_object_get_data (G_OBJECT(menu_item), "MODE")); - refresh_search_entry (GTK_WIDGET(entry_g)); GroupPane * h = (GroupPane*) g_object_get_data ( G_OBJECT(entry_g), "group-pane"); bump_activate_soon_tag (h); @@ -916,16 +892,15 @@ { GtkWidget * entry = gtk_entry_new (); g_object_set_data (G_OBJECT(entry), "group-pane", this); - gtk_entry_set_icon_from_stock( GTK_ENTRY( entry ), - GTK_ENTRY_ICON_SECONDARY, - GTK_STOCK_CLEAR ); - gtk_entry_set_icon_from_stock( GTK_ENTRY( entry ), - GTK_ENTRY_ICON_PRIMARY, - GTK_STOCK_FIND ); + gtk_entry_set_icon_from_icon_name( GTK_ENTRY( entry ), + GTK_ENTRY_ICON_SECONDARY, + "edit-clear" ); + gtk_entry_set_icon_from_icon_name( GTK_ENTRY( entry ), + GTK_ENTRY_ICON_PRIMARY, + "edit-find" ); // gtk_widget_set_size_request (entry, 133, -1); _action_manager.disable_accelerators_when_focused (entry); g_signal_connect (entry, "focus-in-event", G_CALLBACK(search_entry_focus_in_cb), NULL); - g_signal_connect (entry, "focus-out-event", G_CALLBACK(search_entry_focus_out_cb), NULL); g_signal_connect (entry, "activate", G_CALLBACK(search_entry_activated), this); g_signal_connect (entry, "icon-release", G_CALLBACK(clear_button_clicked_cb), this); entry_changed_tag = g_signal_connect (entry, "changed", G_CALLBACK(search_entry_changed_by_user), this); @@ -950,7 +925,6 @@ } g_signal_connect (entry, "icon-release", G_CALLBACK(entry_icon_released), menu); - refresh_search_entry (entry); return entry; } @@ -1082,6 +1056,9 @@ void GroupPane :: refresh_font () { + // TODO: cleanup calls to gtk_widget_override_font. This requires + // changing font with CSS. This impact how to set preferences->Font + // item if (!_prefs.get_flag ("group-pane-font-enabled", false)) gtk_widget_override_font (_tree_view, nullptr); else {
