[elpa] master updated (65c7fcf -> bbfbd6e)

2016-03-15 Thread Michael Albinus
albinus pushed a change to branch master.

  from  65c7fcf   New function el-search--macroexpand-1 for debugging
   new  9fa627b   Decode xsd:base64Binary values in debbugs.el
   new  bbfbd6e   Release debbugs 0.9.1.


Summary of changes:
 packages/debbugs/debbugs-gnu.el |1 +
 packages/debbugs/debbugs.el |   29 -
 2 files changed, 29 insertions(+), 1 deletions(-)



[elpa] master 9fa627b 1/2: Decode xsd:base64Binary values in debbugs.el

2016-03-15 Thread Michael Albinus
branch: master
commit 9fa627bbb3b20d842c72f1d7735deb1b839c6a2d
Author: Thomas Fitzsimmons 
Commit: Michael Albinus 

Decode xsd:base64Binary values in debbugs.el

* packages/debbugs/debbugs.el
(debbugs-convert-soap-value-to-string): New defun.
(debbugs-get-status): Use it to decode xsd:base64Binary values.
---
 packages/debbugs/debbugs.el |   26 ++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/packages/debbugs/debbugs.el b/packages/debbugs/debbugs.el
index f145280..e4c9667 100644
--- a/packages/debbugs/debbugs.el
+++ b/packages/debbugs/debbugs.el
@@ -264,6 +264,27 @@ patch:
   "Return the list of bug numbers, according to AMOUNT (a number) latest bugs."
   (sort (car (soap-invoke debbugs-wsdl debbugs-port "newest_bugs" amount)) '<))
 
+(defun debbugs-convert-soap-value-to-string (string-value)
+  "If STRING-VALUE is unibyte, decode its contents as a UTF-8 string.
+If STRING-VALUE is a multibyte string, then `soap-client'
+received an xsd:string for this value, and will have decoded it
+already.
+
+If STRING-VALUE is a unibyte string, then `soap-client' received
+an xsd:base64Binary, and ran `base64-decode-string' on it to
+produce a unibyte string of bytes.
+
+For some reason, the Debbugs server code base64-encodes strings
+that contain UTF-8 characters, and returns them as
+xsd:base64Binary, instead of just returning them as xsd:string.
+Therefore, when STRING-VALUE is a unibyte string, we assume its
+bytes represent a UTF-8 string and decode them accordingly."
+  (if (stringp string-value)
+  (if (not (multibyte-string-p string-value))
+ (decode-coding-string string-value 'utf-8)
+   string-value)
+(error "Invalid string value")))
+
 (defun debbugs-get-status (&rest bug-numbers)
   "Return a list of status entries for the bugs identified by BUG-NUMBERS.
 
@@ -421,6 +442,11 @@ Example:
(when (stringp (cdr y))
  (setcdr y (mapcar
 'string-to-number (split-string (cdr y) " " t)
+ ;; "originator" may be an xsd:base64Binary value containing
+ ;; a UTF-8-encoded string.
+ (dolist (attribute '(originator))
+   (setq y (assoc attribute (cdr (assoc 'value x
+   (setcdr y (debbugs-convert-soap-value-to-string (cdr y
  ;; "package" is a string, containing comma separated
  ;; package names.  "keywords" and "tags" are strings,
  ;; containing blank separated package names.



[elpa] master bbfbd6e 2/2: Release debbugs 0.9.1.

2016-03-15 Thread Michael Albinus
branch: master
commit bbfbd6ed553be806932e9f58d6de2f866c626bff
Author: Michael Albinus 
Commit: Michael Albinus 

Release debbugs 0.9.1.

* packages/debbugs/debbugs-gnu.el (gnus-fetch-field): Autoload it.

* packages/debbugs/debbugs.el: Increase Version to 0.9.1.
(debbugs-get-status): Decode also "subject"", "owner" and "summary".
---
 packages/debbugs/debbugs-gnu.el |1 +
 packages/debbugs/debbugs.el |   11 ++-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/packages/debbugs/debbugs-gnu.el b/packages/debbugs/debbugs-gnu.el
index 08c8425..378937b 100644
--- a/packages/debbugs/debbugs-gnu.el
+++ b/packages/debbugs/debbugs-gnu.el
@@ -148,6 +148,7 @@
 (autoload 'diff-goto-source "diff-mode")
 (autoload 'diff-hunk-file-names "diff-mode")
 (autoload 'gnus-article-mime-handles "gnus-art")
+(autoload 'gnus-fetch-field "gnus-util")
 (autoload 'gnus-read-ephemeral-emacs-bug-group "gnus-group")
 (autoload 'gnus-summary-article-header "gnus-sum")
 (autoload 'gnus-summary-select-article "gnus-sum")
diff --git a/packages/debbugs/debbugs.el b/packages/debbugs/debbugs.el
index e4c9667..f026ec6 100644
--- a/packages/debbugs/debbugs.el
+++ b/packages/debbugs/debbugs.el
@@ -5,7 +5,7 @@
 ;; Author: Michael Albinus 
 ;; Keywords: comm, hypermedia
 ;; Package: debbugs
-;; Version: 0.9
+;; Version: 0.9.1
 ;; Package-Requires: ((async "1.6"))
 
 ;; This file is not part of GNU Emacs.
@@ -442,11 +442,12 @@ Example:
(when (stringp (cdr y))
  (setcdr y (mapcar
 'string-to-number (split-string (cdr y) " " t)
- ;; "originator" may be an xsd:base64Binary value containing
- ;; a UTF-8-encoded string.
- (dolist (attribute '(originator))
+ ;; "subject", "originator", "owner" and "summary" may be an
+ ;; xsd:base64Binary value containing a UTF-8-encoded string.
+ (dolist (attribute '(subject originator owner summary))
(setq y (assoc attribute (cdr (assoc 'value x
-   (setcdr y (debbugs-convert-soap-value-to-string (cdr y
+   (when (stringp (cdr y))
+ (setcdr y (debbugs-convert-soap-value-to-string (cdr y)
  ;; "package" is a string, containing comma separated
  ;; package names.  "keywords" and "tags" are strings,
  ;; containing blank separated package names.



[elpa] externals/exwm 3cef44a: Exclude unmanaged floating X windows when refreshing

2016-03-15 Thread Chris Feng
branch: externals/exwm
commit 3cef44a6ca2093500b092f99dc588fb8bf9c184d
Author: Chris Feng 
Commit: Chris Feng 

Exclude unmanaged floating X windows when refreshing

* exwm-layout.el (exwm-layout--refresh): Do not show unmanaged
floating X windows.
---
 exwm-layout.el |6 --
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/exwm-layout.el b/exwm-layout.el
index 309bfb6..6825cb5 100644
--- a/exwm-layout.el
+++ b/exwm-layout.el
@@ -258,8 +258,10 @@
 (when (eq major-mode 'exwm-mode)
   (let ((window (frame-first-window frame)))
 (with-current-buffer (window-buffer window)
-  (exwm--log "Refresh floating window #x%x" exwm--id)
-  (exwm-layout--show exwm--id window
+  ;; It may be a buffer waiting to be killed.
+  (when (exwm--id->buffer exwm--id)
+(exwm--log "Refresh floating window #x%x" exwm--id)
+(exwm-layout--show exwm--id window)
   ;; Other frames (e.g. terminal/graphical frame of emacsclient)
   ;; We shall bury all `exwm-mode' buffers in this case
   (setq windows (window-list frame 0)) ;exclude minibuffer