[git] GPGME - branch, javascript-binding, updated. gpgme-1.11.1-89-g715cdc0

by Maximilian Krambach cvs at cvs.gnupg.org
Thu Aug 16 12:04:38 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 Made Easy".

The branch, javascript-binding has been updated
       via  715cdc0d7d5bc8d39ff3cc49774c59e5db01c1b6 (commit)
      from  aeb065acc91a22b6548ebf0a558951ed26398214 (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 715cdc0d7d5bc8d39ff3cc49774c59e5db01c1b6
Author: Maximilian Krambach <maximilian.krambach at intevation.de>
Date:   Thu Aug 16 12:03:30 2018 +0200

    js: get default key fixes
    
    --
    
    * src/Keyring.js: The answer was not parsed correctly, so a config was
      being ignored.
    
    * If no config is set, we return the first non-invalid key with a
      secret, instead of the first key (which may be e.g. an expired one)

diff --git a/lang/js/src/Keyring.js b/lang/js/src/Keyring.js
index c4b89b2..9fdd53b 100644
--- a/lang/js/src/Keyring.js
+++ b/lang/js/src/Keyring.js
@@ -176,12 +176,13 @@ export class GPGME_Keyring {
                 let msg = createMessage('config_opt');
                 msg.setParameter('component', 'gpg');
                 msg.setParameter('option', 'default-key');
-                msg.post().then(function(response){
-                    if (response.value !== undefined
-                        && response.value.hasOwnProperty('string')
-                        && typeof(response.value.string) === 'string'
-                    ){
-                        me.getKeys(response.value.string,true).then(
+                msg.post().then(function(resp){
+                    if (resp.option !== undefined
+                        && resp.option.hasOwnProperty('value')
+                        && resp.option.value.length === 1
+                        && resp.option.value[0].hasOwnProperty('string')
+                        && typeof(resp.option.value[0].string) === 'string'){
+                        me.getKeys(resp.option.value[0].string, true).then(
                             function(keys){
                                 if(keys.length === 1){
                                     resolve(keys[0]);
@@ -198,7 +199,14 @@ export class GPGME_Keyring {
                             if (result.keys.length === 0){
                                 reject(gpgme_error('KEY_NO_DEFAULT'));
                             } else {
-                                resolve(result.keys[0]);
+                                for (let i=0; i< result.keys.length; i++ ) {
+                                    if (result.keys[i].get('invalid') === false) {
+                                        resolve(result.keys[i]);
+                                        break;
+                                    } else if (i === result.keys.length - 1){
+                                        reject(gpgme_error('KEY_NO_DEFAULT'));
+                                    }
+                                }
                             }
                         }, function(error){
                             reject(error);

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

Summary of changes:
 lang/js/src/Keyring.js | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)


hooks/post-receive
-- 
GnuPG Made Easy
http://git.gnupg.org




More information about the Gnupg-commits mailing list