mirror of
https://codeberg.org/cage/tinmop/
synced 2025-03-06 10:27:38 +01:00
- [GUI] prevented an infinite loop when cancelling a request with user input.
This commit is contained in:
parent
4c99e6a8b2
commit
313c003b79
@ -368,10 +368,15 @@
|
|||||||
(declare (ignore original-iri cached))
|
(declare (ignore original-iri cached))
|
||||||
(cond
|
(cond
|
||||||
((gemini-client:header-input-p status-code)
|
((gemini-client:header-input-p status-code)
|
||||||
(let ((actual-iri (get-user-request-query iri meta main-window)))
|
(a:when-let ((actual-iri (get-user-request-query iri
|
||||||
|
meta
|
||||||
|
main-window)))
|
||||||
(slurp-iri main-window actual-iri)))
|
(slurp-iri main-window actual-iri)))
|
||||||
((gemini-client:header-sensitive-input-p status-code)
|
((gemini-client:header-sensitive-input-p status-code)
|
||||||
(let ((actual-iri (get-user-request-query iri meta main-window :sensitive t)))
|
(a:when-let ((actual-iri (get-user-request-query iri
|
||||||
|
meta
|
||||||
|
main-window
|
||||||
|
:sensitive t)))
|
||||||
(slurp-iri main-window actual-iri)))
|
(slurp-iri main-window actual-iri)))
|
||||||
((= status-code comm:+tofu-error-status-code+)
|
((= status-code comm:+tofu-error-status-code+)
|
||||||
(when (gui:ask-yesno meta
|
(when (gui:ask-yesno meta
|
||||||
@ -901,13 +906,14 @@ local file paths."
|
|||||||
prompt
|
prompt
|
||||||
:button-message button-label))
|
:button-message button-label))
|
||||||
(encoded-input (maybe-percent-encode raw-input)))
|
(encoded-input (maybe-percent-encode raw-input)))
|
||||||
(multiple-value-bind (actual-iri host path query port fragment)
|
(when (string-not-empty-p raw-input)
|
||||||
(gemini-client:displace-iri parsed-iri)
|
(multiple-value-bind (actual-iri host path query port fragment)
|
||||||
(declare (ignore actual-iri query fragment))
|
(gemini-client:displace-iri parsed-iri)
|
||||||
(gemini-parser:make-gemini-iri host
|
(declare (ignore actual-iri query fragment))
|
||||||
path
|
(gemini-parser:make-gemini-iri host
|
||||||
:query encoded-input
|
path
|
||||||
:port port))))
|
:query encoded-input
|
||||||
|
:port port)))))
|
||||||
|
|
||||||
(defun slurp-text-data (main-window iri)
|
(defun slurp-text-data (main-window iri)
|
||||||
(labels ((maybe-open-if-completed (stream-info support-file)
|
(labels ((maybe-open-if-completed (stream-info support-file)
|
||||||
@ -977,10 +983,10 @@ local file paths."
|
|||||||
(declare (ignore original-iri cached))
|
(declare (ignore original-iri cached))
|
||||||
(cond
|
(cond
|
||||||
((gemini-client:header-input-p status-code)
|
((gemini-client:header-input-p status-code)
|
||||||
(let ((actual-iri (get-user-request-query iri meta main-window)))
|
(a:when-let ((actual-iri (get-user-request-query iri meta main-window)))
|
||||||
(start-stream-iri actual-iri main-window nil)))
|
(start-stream-iri actual-iri main-window nil)))
|
||||||
((gemini-client:header-sensitive-input-p status-code)
|
((gemini-client:header-sensitive-input-p status-code)
|
||||||
(let ((actual-iri (get-user-request-query iri meta main-window :sensitive t)))
|
(a:when-let ((actual-iri (get-user-request-query iri meta main-window :sensitive t)))
|
||||||
(start-stream-iri actual-iri main-window nil)))
|
(start-stream-iri actual-iri main-window nil)))
|
||||||
((= status-code comm:+tofu-error-status-code+)
|
((= status-code comm:+tofu-error-status-code+)
|
||||||
(when (gui:ask-yesno (_ "The certificate for this address has changed, replace the old with the one I just received?")
|
(when (gui:ask-yesno (_ "The certificate for this address has changed, replace the old with the one I just received?")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user