emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/llm f91d965490 42/71: Add a clause to handle process fi


From: ELPA Syncer
Subject: [elpa] externals/llm f91d965490 42/71: Add a clause to handle process filter errors
Date: Fri, 17 May 2024 00:58:47 -0400 (EDT)

branch: externals/llm
commit f91d9654906b08e18fd7ee830cda87d28938e3ce
Author: Roman Scherer <roman@burningswell.com>
Commit: Roman Scherer <roman@burningswell.com>

    Add a clause to handle process filter errors
---
 llm-request-plz.el | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/llm-request-plz.el b/llm-request-plz.el
index f5566a037e..84e74fc195 100644
--- a/llm-request-plz.el
+++ b/llm-request-plz.el
@@ -101,16 +101,21 @@ code and the HTTP body of the error response.
 
 For Curl errors, ON-ERROR will be called with the exit code of
 the curl process and an error message."
-  (cond ((plz-error-response error)
-         (let ((response (plz-error-response error)))
-           (funcall on-error
-                    (plz-response-status response)
-                    (plz-response-body response))))
+  (cond ((plz-media-type-filter-error-p error)
+         (let ((cause (plz-media-type-filter-error-cause error))
+               (response (plz-error-response error)))
+           ;; TODO: What do we want to pass to callers here?
+           (funcall on-error 'filter-error cause)))
         ((plz-error-curl-error error)
          (let ((curl-error (plz-error-curl-error error)))
            (funcall on-error
                     (car curl-error)
                     (cdr curl-error))))
+        ((plz-error-response error)
+         (when-let ((response (plz-error-response error))
+                    (status (plz-response-status response))
+                    (body (plz-response-body response)))
+           (funcall on-error status body)))
         (t (user-error "Unexpected error: %s" error))))
 
 (cl-defun llm-request-plz-async (url &key headers data on-success media-type



reply via email to

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