Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package evolution-data-server for 
openSUSE:Factory checked in at 2023-07-01 23:17:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/evolution-data-server (Old)
 and      /work/SRC/openSUSE:Factory/.evolution-data-server.new.13546 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "evolution-data-server"

Sat Jul  1 23:17:40 2023 rev:248 rq:1096192 version:3.48.4

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/evolution-data-server/evolution-data-server.changes  
    2023-06-06 19:55:50.870326914 +0200
+++ 
/work/SRC/openSUSE:Factory/.evolution-data-server.new.13546/evolution-data-server.changes
   2023-07-01 23:17:46.270159568 +0200
@@ -1,0 +2,7 @@
+Fri Jun 30 08:30:27 UTC 2023 - Bjørn Lie <bjorn....@gmail.com>
+
+- Update to version 3.48.4:
+  + Bug Fixed: Camel: Learn as Junk filter action not actually
+    running the learn function.
+
+-------------------------------------------------------------------

Old:
----
  evolution-data-server-3.48.3.tar.xz

New:
----
  evolution-data-server-3.48.4.tar.xz

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

Other differences:
------------------
++++++ evolution-data-server.spec ++++++
--- /var/tmp/diff_new_pack.hO4Fz6/_old  2023-07-01 23:17:47.278165610 +0200
+++ /var/tmp/diff_new_pack.hO4Fz6/_new  2023-07-01 23:17:47.294165706 +0200
@@ -32,7 +32,7 @@
 %bcond_without introspection
 
 Name:           evolution-data-server
-Version:        3.48.3
+Version:        3.48.4
 Release:        0
 Summary:        Evolution Data Server
 License:        LGPL-2.0-only

++++++ evolution-data-server-3.48.3.tar.xz -> 
evolution-data-server-3.48.4.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/evolution-data-server-3.48.3/CMakeLists.txt 
new/evolution-data-server-3.48.4/CMakeLists.txt
--- old/evolution-data-server-3.48.3/CMakeLists.txt     2023-06-02 
08:34:24.000000000 +0200
+++ new/evolution-data-server-3.48.4/CMakeLists.txt     2023-06-30 
09:54:45.000000000 +0200
@@ -4,7 +4,7 @@
 cmake_policy(VERSION 3.1)
 
 project(evolution-data-server
-       VERSION 3.48.3
+       VERSION 3.48.4
        LANGUAGES C CXX)
 set(PROJECT_BUGREPORT 
"https://gitlab.gnome.org/GNOME/evolution-data-server/issues/";)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/evolution-data-server-3.48.3/NEWS 
new/evolution-data-server-3.48.4/NEWS
--- old/evolution-data-server-3.48.3/NEWS       2023-06-02 08:34:24.000000000 
+0200
+++ new/evolution-data-server-3.48.4/NEWS       2023-06-30 09:54:45.000000000 
+0200
@@ -1,3 +1,9 @@
+Evolution-Data-Server 3.48.4 2023-06-30
+---------------------------------------
+
+Bug Fixes:
+       I#480 - Camel: Learn as Junk filter action not actually running the 
learn function
+
 Evolution-Data-Server 3.48.3 2023-06-02
 ---------------------------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/evolution-data-server-3.48.3/src/camel/camel-filter-driver.c 
new/evolution-data-server-3.48.4/src/camel/camel-filter-driver.c
--- old/evolution-data-server-3.48.3/src/camel/camel-filter-driver.c    
2023-06-02 08:34:24.000000000 +0200
+++ new/evolution-data-server-3.48.4/src/camel/camel-filter-driver.c    
2023-06-30 09:54:45.000000000 +0200
@@ -1000,17 +1000,51 @@
 
        d (fprintf (stderr, "setting flag\n"));
        if (argc == 1 && argv[0]->type == CAMEL_SEXP_RES_STRING) {
+               gboolean set_flag = TRUE;
                flags = camel_system_flag (argv[0]->value.string);
-               if (driver->priv->source && driver->priv->uid && 
camel_folder_has_summary_capability (driver->priv->source))
-                       camel_folder_set_message_flags (
-                               driver->priv->source, driver->priv->uid, flags, 
~0);
-               else
-                       camel_message_info_set_flags (
-                               driver->priv->info, flags |
-                               CAMEL_MESSAGE_FOLDER_FLAGGED, ~0);
-               camel_filter_driver_log (
-                       driver, FILTER_LOG_ACTION,
-                       "Set %s flag", argv[0]->value.string);
+               if ((flags & CAMEL_MESSAGE_JUNK_LEARN) != 0) {
+                       CamelJunkFilter *junk_filter;
+
+                       junk_filter = camel_session_get_junk_filter 
(driver->priv->session);
+                       if (junk_filter) {
+                               GError *local_error = NULL;
+
+                               if (!driver->priv->message) {
+                                       /* FIXME Pass a GCancellable */
+                                       driver->priv->message = 
camel_folder_get_message_sync (
+                                               driver->priv->source,
+                                               driver->priv->uid, NULL,
+                                               &local_error);
+                                       if (!driver->priv->message) {
+                                               camel_filter_driver_log 
(driver, FILTER_LOG_ACTION, "Cannot learn junk, failed to get message: %s",
+                                                       local_error ? 
local_error->message : "Unknown error");
+                                       }
+                                       g_clear_error (&local_error);
+                               }
+
+                               /* FIXME Pass a GCancellable */
+                               if (driver->priv->message && 
!camel_junk_filter_learn_junk (junk_filter, driver->priv->message, NULL, 
&local_error)) {
+                                       camel_filter_driver_log (driver, 
FILTER_LOG_ACTION, "Failed to learn junk: %s",
+                                               local_error ? 
local_error->message : "Unknown error");
+                               } else if (driver->priv->message) {
+                                       camel_filter_driver_log (driver, 
FILTER_LOG_ACTION, "Learn junk");
+                                       set_flag = FALSE;
+                               }
+
+                               g_clear_error (&local_error);
+                       } else {
+                               camel_filter_driver_log (driver, 
FILTER_LOG_ACTION, "Cannot learn junk, no junk filter set");
+                       }
+               }
+
+               if (set_flag) {
+                       if (driver->priv->source && driver->priv->uid && 
camel_folder_has_summary_capability (driver->priv->source))
+                               camel_folder_set_message_flags 
(driver->priv->source, driver->priv->uid, flags, ~0);
+                       else
+                               camel_message_info_set_flags 
(driver->priv->info, flags | CAMEL_MESSAGE_FOLDER_FLAGGED, ~0);
+
+                       camel_filter_driver_log (driver, FILTER_LOG_ACTION, 
"Set %s flag", argv[0]->value.string);
+               }
        }
 
        return NULL;

Reply via email to