[git] GpgOL - branch, master, updated. gpgol-2.2.0-142-g649622c

by Andre Heinecke cvs at cvs.gnupg.org
Wed Aug 22 10:54:40 CEST 2018


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GnuPG extension for MS Outlook".

The branch, master has been updated
       via  649622c95089767d8a27623e66396b2378f72a04 (commit)
       via  9158c1792354be5ef7860a53115488216f9a73e0 (commit)
      from  b5e68fc000add09200045df885479864bc325445 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 649622c95089767d8a27623e66396b2378f72a04
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Wed Aug 22 10:51:42 2018 +0200

    Fix potential crash in T3656 workaround
    
    * src/windowmessages.cpp (CLOSE): Use the currentViewRef trick
    to avoid unload in close.
    
    --
    The workaround codepath crashed reliably for me with the
    async sending. But with the current item ref trick it no
    longer crashes as the unload is later. My observation is
    that any Invoke that triggers an Unload can crash so we
    better avoid it.
    
    GnuPG-Bug-Id: T3656

diff --git a/src/windowmessages.cpp b/src/windowmessages.cpp
index afb8197..e3dfd45 100644
--- a/src/windowmessages.cpp
+++ b/src/windowmessages.cpp
@@ -132,7 +132,11 @@ gpgol_window_proc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
                              SRCNAME, __func__);
                   break;
                 }
+              mail->refCurrentItem();
               Mail::close (mail);
+              log_debug ("%s:%s: Close finished.",
+                         SRCNAME, __func__);
+              mail->releaseCurrentItem();
               break;
             }
           case (CRYPTO_DONE):

commit 9158c1792354be5ef7860a53115488216f9a73e0
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Wed Aug 22 10:26:58 2018 +0200

    WKS: Handle aborted confirmation process better
    
    * src/wks-helper.cpp (handle_confirmation_notify): Go back a
    state if we have not seen a confirmation in this run.

diff --git a/src/wks-helper.cpp b/src/wks-helper.cpp
index 8ddbf35..388454a 100644
--- a/src/wks-helper.cpp
+++ b/src/wks-helper.cpp
@@ -691,16 +691,16 @@ WKSHelper::handle_confirmation_notify (const std::string &mbox) const
   GpgME::Data *mimeData = pair.first;
   Mail *mail = pair.second;
 
-  if (!mail)
+  if (!mail && !mimeData)
     {
-      log_debug ("%s:%s: Confirmation notify without cached mail.",
+      log_debug ("%s:%s: Confirmation notify without cached data.",
                  SRCNAME, __func__);
-    }
 
-  if (!mimeData)
-    {
-      log_error ("%s:%s: Confirmation notify without cached data.",
-                 SRCNAME, __func__);
+      /* This happens when we have seen a confirmation but have
+       * not confirmed it and the state was saved. So we go back
+       * to the confirmation sent state and wait until we see
+       * the confirmation the next time. */
+      update_state (mbox, ConfirmationSent);
       return;
     }
 

-----------------------------------------------------------------------

Summary of changes:
 src/windowmessages.cpp |  4 ++++
 src/wks-helper.cpp     | 14 +++++++-------
 2 files changed, 11 insertions(+), 7 deletions(-)


hooks/post-receive
-- 
GnuPG extension for MS Outlook
http://git.gnupg.org




More information about the Gnupg-commits mailing list