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

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

bug#48228: json-serialize should signal error when dll is not found [MS


From: Dmitry Gutov
Subject: bug#48228: json-serialize should signal error when dll is not found [MS Windows]
Date: Tue, 4 May 2021 19:59:15 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1

On 04.05.2021 19:43, Robert Pluim wrote:
What makes it error-prone? Those existing testing functions (on
Windows) attempt to load the relevant DLL's using the exact same
mechanisms as the actual code, so the failure (and success) modes are
identical.

When somebody write code using json-serialize, and it can't do what it was asked to do, it should raise an error.

I have code like this in a separate project:

  (cond ((fboundp 'json-parse-buffer)
         (json-parse-buffer
          :array-type 'list
          :object-type 'alist
          :null-object nil))
        (t
         (let ((json-array-type 'list))
           (json-read))))

It has been there for a couple of years. And only now I find out that it can fail on MS Windows, because that failure is not reproducible on any other platform. I can only hope that whatever random Windows users encountered it saw the message wherever it was printed, and it was not concealed by subsequent messages from the caller code (reporting some cryptic errors, I imagine).

That's not to say we must not have a function json-available-p. If it's helpful, why not add it as well.





reply via email to

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