Hello,

I couldn't find a -dev mailing list so I'm sending the patch here. It fixes
the following actions under TB 56b4: "Reveal", "Decrypt & Open", "Decrypt &
Save".

I am by no means a JS developer, but I noticed that "EnigmailGpgAgent" was
undefined in Attachment.jsm. After digging, I saw that many .jsm actually
include this symbol using Enigmail Lazy loader. Turns out, this did the
trick for attachments (I can't explain why though).

Regards,
Maxime
From 6b00a5fc9bcc0595c7534823bbe29a018cc52d2f Mon Sep 17 00:00:00 2001
From: Maxime Jourdan <[email protected]>
Date: Mon, 18 Sep 2017 15:51:29 +0200
Subject: [PATCH] Fix attachments with TB 56b4

Fixes attachments "reveal", "Decrypt & Open", "Decrypt & Save" with thunderbird 56.0b4.
---
 package/attachment.jsm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/package/attachment.jsm b/package/attachment.jsm
index 4bcc9544..16615f97 100644
--- a/package/attachment.jsm
+++ b/package/attachment.jsm
@@ -13,13 +13,15 @@ var EXPORTED_SYMBOLS = ["EnigmailAttachment"];
 
 const Cu = Components.utils;
 
+Cu.import("resource://enigmail/lazy.jsm"); /*global EnigmailLazy: false */
 Cu.import("resource://enigmail/execution.jsm"); /*global EnigmailExecution: false */
 Cu.import("resource://enigmail/log.jsm"); /*global EnigmailLog: false */
-Cu.import("resource://enigmail/gpgAgent.jsm"); /*global EnigmailGpgAgent: false */
 Cu.import("resource://enigmail/passwords.jsm"); /*global EnigmailPassword: false */
 Cu.import("resource://enigmail/gpg.jsm"); /*global EnigmailGpg: false */
 Cu.import("resource://enigmail/data.jsm"); /*global EnigmailData: false */
 
+const getGpgAgent = EnigmailLazy.loader("enigmail/gpgAgent.jsm", "EnigmailGpgAgent");
+
 const EnigmailAttachment = {
   getFileName: function(parent, byteData) {
     EnigmailLog.DEBUG("attachment.jsm: getFileName\n");
@@ -38,7 +40,7 @@ const EnigmailAttachment = {
 
     listener.stdout = function(data) {};
 
-    const proc = EnigmailExecution.execStart(EnigmailGpgAgent.agentPath, args, false, parent, listener, {});
+    const proc = EnigmailExecution.execStart(getGpgAgent().agentPath, args, false, parent, listener, {});
 
     if (!proc) {
       return null;
-- 
2.14.1

_______________________________________________
enigmail-users mailing list
[email protected]
To unsubscribe or make changes to your subscription click here:
https://admin.hostpoint.ch/mailman/listinfo/enigmail-users_enigmail.net

Reply via email to