mirror of
https://github.com/penpot/penpot.git
synced 2025-05-18 13:56:10 +02:00
🐛 Fix unexpected exception on uploading invalid svg file.
This commit is contained in:
parent
946d40e6cd
commit
2b33300d79
2 changed files with 10 additions and 2 deletions
|
@ -121,11 +121,16 @@
|
||||||
|
|
||||||
(defn parse
|
(defn parse
|
||||||
[data]
|
[data]
|
||||||
|
(try
|
||||||
(with-open [istream (IOUtils/toInputStream data "UTF-8")]
|
(with-open [istream (IOUtils/toInputStream data "UTF-8")]
|
||||||
(xml/parse istream)))
|
(xml/parse istream))
|
||||||
|
(catch org.xml.sax.SAXParseException _e
|
||||||
|
(ex/raise :type :validation
|
||||||
|
:code :invalid-svg-file))))
|
||||||
|
|
||||||
(defn process-request
|
(defn process-request
|
||||||
[{:keys [svgc] :as cfg} body]
|
[{:keys [svgc] :as cfg} body]
|
||||||
(let [data (slurp body)
|
(let [data (slurp body)
|
||||||
data (svgc data)]
|
data (svgc data)]
|
||||||
(parse data)))
|
(parse data)))
|
||||||
|
|
||||||
|
|
|
@ -421,6 +421,9 @@
|
||||||
(if (ex/ex-info? error)
|
(if (ex/ex-info? error)
|
||||||
(on-error* (ex-data error))
|
(on-error* (ex-data error))
|
||||||
(cond
|
(cond
|
||||||
|
(= (:code error) :invalid-svg-file)
|
||||||
|
(rx/of (dm/error (tr "errors.media-type-not-allowed")))
|
||||||
|
|
||||||
(= (:code error) :media-type-not-allowed)
|
(= (:code error) :media-type-not-allowed)
|
||||||
(rx/of (dm/error (tr "errors.media-type-not-allowed")))
|
(rx/of (dm/error (tr "errors.media-type-not-allowed")))
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue