From 7571d6214825977d92023f4d8f4019482e45f041 Mon Sep 17 00:00:00 2001 From: Adam Helinski Date: Wed, 28 Feb 2018 12:20:13 +0100 Subject: [PATCH] Fix pom version bug Before this fix, `postal.support/pom-version` would sometimes throw a null pointer exception because it could not find the relevant pom file. Now, this function returns nil instead. Furthermore, `postal.support/user-agent` has been corrected accordingly. --- src/postal/support.clj | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/postal/support.clj b/src/postal/support.clj index 9195386..9388ff8 100644 --- a/src/postal/support.clj +++ b/src/postal/support.clj @@ -86,13 +86,15 @@ (format "<%s.%s@%s>" onlychars epoch host)))) (defn pom-version [] - (let [pom "META-INF/maven/com.draines/postal/pom.properties" - props (doto (Properties.) - (.load (-> pom io/resource io/input-stream)))] - (.getProperty props "version"))) + (when-let [is (some-> (io/resource "META-INF/maven/com.draines/postal/pom.properties") + io/input-stream)] + (.getProperty (doto (Properties.) + (.load is)) + "version"))) (defn user-agent [] - (let [prop (Properties.) - ver (or (System/getProperty "postal.version") - (pom-version))] - (format "postal/%s" ver))) + (if-let [version (or (System/getProperty "postal.version") + (pom-version))] + (format "postal/%s" + version) + "postal"))