Hello community, here is the log from the commit of package caja for openSUSE:Leap:15.2 checked in at 2020-03-06 12:39:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2/caja (Old) and /work/SRC/openSUSE:Leap:15.2/.caja.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "caja" Fri Mar 6 12:39:56 2020 rev:22 rq:781528 version:1.24.0 Changes: -------- --- /work/SRC/openSUSE:Leap:15.2/caja/caja.changes 2020-01-15 14:49:18.453374530 +0100 +++ /work/SRC/openSUSE:Leap:15.2/.caja.new.26092/caja.changes 2020-03-06 12:42:50.402814201 +0100 @@ -1,0 +2,304 @@ +Wed Feb 26 19:38:40 UTC 2020 - Alexei Sorokin <[email protected]> + +- Update to version 1.24.0 (changes since 1.23.1): + * caja-progress-info: Use NotifyNotification instead of + GNotification. + * Copy file and keep timestamps of original file including + remotes. + * Fix Caja crashes on file move in Korean. + * Support querying files by contained text. + * Use show icons option in views tab. + * Add preference option to hide icons in list view. + * fm-directory-view: Add icon to "empty trash" into "File" menu. + * gla11y: Use version 0.3 which already defaults to using + python3. + * caja-places-sidebar: Add icon to "empty trash". + * spatial-window: Replace geprecated gtk_menu_popup. + * property-browser: Replace deprecated gtk_drag_begin. + * fm-list-view: Replace deprecated gtk_drag_begin. + * Show thumbnails in list view. + * file-manager: Reduce the scope of some variables. + * preferences: Render extension icons as cairo_surfaces. + * preferences: Render media icons as cairo_surface. + * Replace gdkpixbuf with cairo_surfaces in a few more places. + * sidebar: Render info icon as vector. + * desktop: Add specific CSS for ContrastHigh and + ContrastHighInverse. + * desktop: Add specific CSS for HighContrast and + HighContrastInverse. + * Add support for loading theme-specific caja-desktop CSS. + * Refactor custom CSS loading into a separate function. + * Add support for checking .ui accessibility with gla11y. + * Render file-conflict icons as cairo_surface vectors. + * file-conflict-dialog: Don't scale icons twice on hidpi monitors. + * eel-string: Fix "make check". + * Restore transparent background on icon view labels. + * desktop icon view: Disconnect callback from correct GSettings + instance. + * Add scroll tabs with mouse wheel for File's properties and + caja's preferences windows. + * hidpi: Ensure all icons are properly scaled. + * Use GETTEXTDATADIRS replace GETTEXTDATADIR. + * Create msgstr for data/browser.xml. + * Add gettext ITS. + * Migrate intltool to gettext. + * fm-properties: Remove use of mate-desktop-thumbnail helper. + * Make device ejection notifications translatable. + * Keep path same when opening new window from an existing one. + * editable-label: Don't hyphenate filenames. + * libcaja-private/caja-file: Redundant condition. + * Avoid redundant redeclarations. + * canvas-item: Don't hyphenate filenames. + * change name from caja.{its,loc} to mimeinfo.{its,loc}. + * caja-window-slot: "folder-saved-search" icon instead + "text-x-generic". + * Let some strings be translatable. + * Add document for CajaWidgetViewProvider api. + * Add new interface. + * Add CajaWidgetViewProvider docs. + * Add new extension for widget view. + * Hide menu and toolbutton when view is only one. + * Set FmWidgetView is single view. + * Add new FmWidgetView object. + * Fix build error about autoptr clean. + * Use absolute path of binary on desktop files. + * build: Fix wrong executing dir in caja.desktop. + * Set a real title on the desktop window (as provided to ATK). + * Drop GLIB version check. + * build: Show compiler flags on configuration summary. + * Fix build using the -fno-common flag. + * Update translations. +- Drop support for old openSUSE versions. +- Add caja-glib-2.54.patch: restore GLib 2.54 support. + +------------------------------------------------------------------- +Wed Jul 17 14:51:54 UTC 2019 - Jonathan Brielmaier <[email protected]> + +- Update to version 1.23.1 (changes since 1.22.1): + * desktop: Always draw the items label frame + * suppress GtkAction deprecations warnings + * src: reduce the scope of some variables + * caja-open-with-dialog: cppcheck: Redundant condition + * eel-canvas: cppcheck: Local variable 'allocation' shadows outer variable + * caja-progress-info: add tooltips to file transfer dialog + * Add accessible names for buttons in file transfer operations dialog + * libegg: reduce the scope of some variables + * libcaja-private: reduce the scope of some variables + * eel: remove date & time functions + * caja-spatial-window: Unused variable i + * eel: reduce the scope of some variables + * caja-location-dialog: Fix 'cppcheck' and 'clang' warnings + * update translations + * caja-property-browser: Fix cast from non-struct type to struct type + * eggsmclient-xsmp: Fix cast from non-struct type to struct type + * caja-file-utilities: Fix cast from non-struct type to struct type + * local #include files who are libraries inside <> instead "" + * eel-string: Use 'va_copy' instead of 'G_VA_COPY' + * eel-editable-label: Use 'memmove' instead of 'memcpy' + * eel: remove eel_g_object_list_ref + * drop functions defined but not used + * local #include files inside "" instead <> + * caja-icon-canvas-item: avoid 'cppcheck' warning + * caja-file: avoid shifting signed 32-bit value by 31 bits + * caja-icon-canvas-item: initialize variable 'scale' + * caja-application: avoid NULL inside 'g_object_unref' + * fm-desktop-icon-view: remove dead code + * caja-file-operations: make sure 'error' isn't NULL + * caja-open-with-dialog: make sure there is error before showing it + * eel-string: Fix: 'memcpy' overflows destination buffer + * eel-string: avoid 'memcpy' with NULL argument + * caja-progress-info: make sure argument is initialized + * eel: replace eel_ref_str with GRefString + * eel: remove g_object_list_copy + * caja-sidebar-title: avoid 'NULL' inside 'setup_gc_with_fg' + * caja-file: Fix incomplete file replacement dialog + * caja-autorun: avoid NULL in 'memcpy' + * eel-editable-label: call argument with initialized value + * caja-file: Fix: true and false branches are identical + * caja-file-operations: add comment with false positive warning: + * configure.ac: fix portability issue with test + * eel: remove g_str_list_copy + * Remove USE_MATE2_MACROS from autogen.sh (legacy) + * eel: remove g_list_free_deep_custom + * avoid variables set but not used + * eel-canvas: Fix warning: Undefined or garbage value returned to caller + * caja-window: Fix garbage value + * eel-gdk-pixbuf-extensions: Fix division by zero + * Fix use of memory after it is freed. + * Fix attempt to free released memory + * drop unused variables +- remove patches: + * caja-missing-include.patch: builds fine without it + * caja-gtk-3.20.patch: we don't support gtk3.20 anymore +- build require gtk >= 3.22, glib >= 2.50 and gio >= 2.50 + +------------------------------------------------------------------- +Sun May 12 18:13:56 UTC 2019 - Alexei Sorokin <[email protected]> + +- Update to version 1.22.1: + * caja-progress-info: Make sure argument is initialised. + * Fix invocation with --geometry from the command line. + * Pass "NULL" for keyboard event. + * caja-file: Fix incomplete file replacement dialogue. + * eel-gdk-pixbuf-extensions: Fix division by zero. + * caja-file: Fix use of memory after it is freed. + * caja-icon-container: Fix use of memory after it is freed. + * fm-tree-model: Fix use of memory after it is freed. + * caja-information-panel: Fix use of memory after it is freed. + * fm-directory-view: Fix use of memory after it is freed. + * caja-tree-view-drag-dest: Fix memory leak. + * [Security] eel-string: Use "g_strlcat" instead of "strcat". + * [Security] Use "g_strlcpy" instead of "strcpy". + * Update translations. + +------------------------------------------------------------------- +Tue Mar 5 15:19:33 UTC 2019 - [email protected] + +- Update to version 1.22.0: + * Avoid deprecated GtkStock. + * Avoid deprecated GtkImageMenuItem. + * libcaja-private/caja-recent.c: gvfs-open is a deprecated tool, + switch to "gio open" from libglib2.0-bin. + * caja-query-editor.c: Add "#include <eel/eel-stock-dialogs.h>". + * caja-file-management-properties.ui: Avoid deprecated GtkVBox + and GtkHBox. + * caja-bookmarks-window.ui: Avoid deprecated functions. + * Rename mate_dialog_add_button to eel_dialog_add_button. + * caja-spatial-window.c: Avoid deprecated GtkVBox. + * Eliminate accessible children-changed event flood on container + repopulation. + * Eliminate accessible children-changed event flood during update + all. + * Emit accessible-name-change signal for icons only when icons + are renamed. + * sidebar popup menu: Show "media-eject" icon in the "unmount" + items. + * pathbar: Fix random segfaults on opening mounts from Desktop. + * fm-icon-view: Show size on disc as sort criterion. + * sidebar popup menu: Show "media-eject" icon. + * Add sort criterion by reversed extension segments. + * fm-tree-view.c: Drop unused variable. + * Rename "mate_image_menu_item..." to + "eel_image_menu_item_new_from_icon". + * eel-gtk-extensions: Show icons in right-click menus only if + "menus-have-icons" is set. + * caja-sidebar-title: Fix: images broken in sidebar. + * caja-progress-info.c: Show notifications in begin/end of + progress. + * caja-progress-info.c: Avoid deprecated + "gtk_status_icon_get_visible". + * caja-sidebar-title: Fix a -Wmaybe-uninitialized warning. + * caja-desktop-window.c: Fix: caja crashes unexpectedly. + * Avoid deprecated "gtk_widget_override_font". + * Avoid deprecated "gtk_window_set_wmclass". + * caja-bookmark.c: Drop unused variable. + * caja-bookmark.c: Fix icons in bookmarks. + * icon-container: Avoid deprecated + "gtk_style_context_get_border_color". ++++ 107 more lines (skipped) ++++ between /work/SRC/openSUSE:Leap:15.2/caja/caja.changes ++++ and /work/SRC/openSUSE:Leap:15.2/.caja.new.26092/caja.changes Old: ---- caja-1.20.2.tar.xz caja-gtk-3.20.patch New: ---- caja-1.24.0.tar.xz caja-glib-2.54.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ caja.spec ++++++ --- /var/tmp/diff_new_pack.eubxPI/_old 2020-03-06 12:42:50.830814461 +0100 +++ /var/tmp/diff_new_pack.eubxPI/_new 2020-03-06 12:42:50.834814464 +0100 @@ -1,7 +1,7 @@ # # spec file for package caja # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,35 +12,34 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define lname libcaja-extension1 %define typelib typelib-1_0-Caja-2_0 -%define _version 1.20 +%define _version 1.24 Name: caja -Version: 1.20.2 +Version: 1.24.0 Release: 0 Summary: File manager for the MATE desktop License: GPL-2.0-only AND LGPL-2.0-only -Group: System/GUI/Other -Url: https://mate-desktop.org/ -Source: http://pub.mate-desktop.org/releases/%{_version}/%{name}-%{version}.tar.xz -# PATCH-FEATURE-OPENSUSE caja-gtk-3.20.patch -- Restore GLib 2.48 and GTK+ 3.20 support. -Patch0: caja-gtk-3.20.patch +URL: https://mate-desktop.org/ +Source: https://pub.mate-desktop.org/releases/%{_version}/%{name}-%{version}.tar.xz +# PATCH-FEATURE-OPENSUSE caja-glib-2.54.patch -- Restore GLib 2.54 support. +Patch0: %{name}-glib-2.54.patch BuildRequires: mate-common >= %{_version} BuildRequires: pkgconfig BuildRequires: update-desktop-files BuildRequires: pkgconfig(dbus-glib-1) BuildRequires: pkgconfig(exempi-2.0) BuildRequires: pkgconfig(gail) -BuildRequires: pkgconfig(gio-2.0) >= 2.48 +BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-unix-2.0) -BuildRequires: pkgconfig(glib-2.0) >= 2.48 +BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(gthread-2.0) -BuildRequires: pkgconfig(gtk+-3.0) >= 3.20 +BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(libexif) BuildRequires: pkgconfig(libnotify) BuildRequires: pkgconfig(libxml-2.0) @@ -63,7 +62,6 @@ %package devel Summary: Caja development files -Group: Development/Libraries/C and C++ Requires: %{lname} = %{version} Requires: %{name} = %{version} # mate-file-manager-devel was last used in openSUSE 13.1. @@ -78,7 +76,6 @@ %package -n %{lname} Summary: Caja shared libraries -Group: System/Libraries Requires: %{name}-gschemas >= %{version} %description -n %{lname} @@ -88,10 +85,8 @@ desktop. It works on local and remote filesystems. # Needed for using pluma as standalone from MATE. - %package gschemas Summary: Caja GSchemas -Group: System/Libraries Obsoletes: mate-file-manager < %{version} # caja-gsettings-schemas was last used in openSUSE Leap 42.1. Obsoletes: %{name}-gsettings-schemas < %{version} @@ -108,7 +103,6 @@ %package -n %{typelib} Summary: MATE file manager typelib -Group: System/GUI/Other %description -n %{typelib} Caja is the official file manager for the MATE desktop. It allows to @@ -117,8 +111,7 @@ desktop. It works on local and remote filesystems. %prep -%setup -q -%patch0 -p1 +%autosetup -p1 %build NOCONFIGURE=1 mate-autogen @@ -126,7 +119,7 @@ --disable-update-mimedb \ --disable-static \ --enable-introspection -make %{?_smp_mflags} V=1 +%make_build %install %make_install @@ -150,30 +143,8 @@ %postun -n %{lname} -p /sbin/ldconfig -%if 0%{?suse_version} < 1500 -%post -%desktop_database_post -%icon_theme_cache_post -%mime_database_post - -%postun -%desktop_database_postun -%icon_theme_cache_postun -%mime_database_postun - -%post gschemas -%glib2_gsettings_schema_post - -%postun gschemas -%glib2_gsettings_schema_postun -%endif - %files -%if 0%{?suse_version} >= 1500 %license COPYING COPYING.EXTENSIONS COPYING.LIB -%else -%doc COPYING COPYING.EXTENSIONS COPYING.LIB -%endif %doc AUTHORS NEWS %{_bindir}/caja %{_bindir}/caja-autorun-software @@ -193,8 +164,8 @@ %{_datadir}/pixmaps/* %{_datadir}/mime/packages/* %{_mandir}/man?/*.?%{?ext_man} -%dir %{_datadir}/appdata/ -%{_datadir}/appdata/caja.appdata.xml +%dir %{_datadir}/metainfo/ +%{_datadir}/metainfo/caja.appdata.xml # Own common extensions directories. %dir %{_libdir}/caja/ %dir %{_libdir}/caja/extensions-2.0/ ++++++ caja-1.20.2.tar.xz -> caja-1.24.0.tar.xz ++++++ ++++ 1515724 lines of diff (skipped) ++++++ caja-glib-2.54.patch ++++++ --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ(2.54) dnl =========================================================================== m4_define(gdk-pixbuf_minver, 2.36.5) -m4_define(glib_minver, 2.58.1) +m4_define(glib_minver, 2.54.0) m4_define(gio_minver, 2.50.0) m4_define(mate_desktop_minver, 1.17.3) m4_define(pango_minver, 1.1.2) --- a/eel/eel-string.c +++ b/eel/eel-string.c @@ -754,6 +754,110 @@ eel_strdup_printf_with_custom (EelPrintf return res; } +#if !GLIB_CHECK_VERSION (2, 58, 0) +/*********** refcounted strings ****************/ + +G_LOCK_DEFINE_STATIC (interned_ref_strings); +static GHashTable *interned_ref_strings; + +char * +g_ref_string_new (const char *str) +{ + gpointer allocated; + char *res; + volatile gint *count; + gsize len; + + g_return_val_if_fail (str != NULL, NULL); + + len = strlen (str); + allocated = g_malloc (sizeof (gint) + sizeof (char) * len + 1); + count = (volatile gint *) allocated; + *count = 1; + res = allocated + sizeof (gint); + memcpy (res, str, len + 1); + return res; +} + +static gboolean +interned_str_equal (gconstpointer v1, + gconstpointer v2) +{ + const char *str1 = v1; + const char *str2 = v2; + + if (v1 == v2) + return TRUE; + return strcmp (str1, str2) == 0; +} + +char * +g_ref_string_new_intern (const char *str) +{ + char *res; + + g_return_val_if_fail (str != NULL, NULL); + + G_LOCK (interned_ref_strings); + + if (G_UNLIKELY (interned_ref_strings == NULL)) + interned_ref_strings = g_hash_table_new (g_str_hash, interned_str_equal); + + res = g_hash_table_lookup (interned_ref_strings, str); + if (res != NULL) + { + volatile gint *count; + + count = (volatile gint *) (res - sizeof (gint)); + g_atomic_int_inc (count); + G_UNLOCK (interned_ref_strings); + return res; + } + + res = g_ref_string_new (str); + g_hash_table_add (interned_ref_strings, res); + G_UNLOCK (interned_ref_strings); + return res; +} + +char * +g_ref_string_acquire (char *str) +{ + volatile gint *count; + + g_return_val_if_fail (str != NULL, NULL); + + count = (volatile gint *) (str - sizeof (gint)); + g_atomic_int_inc (count); + return str; +} + +void +g_ref_string_release (char *str) +{ + volatile gint *count; + + g_return_if_fail (str != NULL); + + count = (volatile gint *) (str - sizeof (gint)); + + if (!g_atomic_int_dec_and_test (count)) + return; + + G_LOCK (interned_ref_strings); + if (G_LIKELY (interned_ref_strings != NULL)) + { + g_hash_table_remove (interned_ref_strings, str); + + if (g_hash_table_size (interned_ref_strings) == 0) + g_clear_pointer (&interned_ref_strings, g_hash_table_destroy); + } + G_UNLOCK (interned_ref_strings); + + g_free ((gpointer) count); +} +#endif + #if !defined (EEL_OMIT_SELF_CHECK) static void --- a/eel/eel-string.h +++ b/eel/eel-string.h @@ -79,6 +79,17 @@ char * eel_str_replace_substring const char *substring, const char *replacement); +#if !GLIB_CHECK_VERSION (2, 58, 0) +typedef char GRefString; + +char *g_ref_string_new (const char *str); +char *g_ref_string_new_intern (const char *str); + +char *g_ref_string_acquire (char *str); +void g_ref_string_release (char *str); +#endif + + typedef struct { char character;
