bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#58605: 29.0.50; Commit 2a2f5530fa2 breaks ldap-search-internal


From: Juri Linkov
Subject: bug#58605: 29.0.50; Commit 2a2f5530fa2 breaks ldap-search-internal
Date: Thu, 20 Oct 2022 11:12:04 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu)

> commit 2a2f5530fa230e2b994be5683e63763833bb6a0a breaks
> ldap-search-internal for searches with empty results.

I confirm that ldap search is broken.  When the output contains for example:

  dn: cn=admin,dc=example,dc=com

then it raises the error:

  insert-file-contents: Opening input file: No such file or directory, 
~/cn=admin,dc=example,dc=com

> The added “?” should be removed there again:
>
> @@ -699,7 +699,7 @@ ldap-search-internal
>         (forward-line 1)
>            (while (looking-at "^\\([A-Za-z][-A-Za-z0-9]*\
>  \\|[0-9]+\\(?:\\.[0-9]+\\)*\\)\\(;[-A-Za-z0-9]+\\)*[=:\t ]+\
> -\\(<[\t ]*file://\\)\\(.*\\)$")
> +\\(<[\t ]*file://\\)?\\(.*\\)$")
>           (setq name (match-string 1)
>                 value (match-string 4))
>              ;; Need to handle file:///D:/... as generated by OpenLDAP

Removing “?” doesn't fix the problem because then nil is returned
even in case when there are results.

I guess this whole block

              (with-current-buffer bufval
                (erase-buffer)
                (set-buffer-multibyte nil)
                (insert-file-contents-literally value)
                (delete-file value)
                (setq value (buffer-string)))

should be executed only on a condition that checks that value contains 
"file://".





reply via email to

[Prev in Thread] Current Thread [Next in Thread]