aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/clojure/contrib/str_utils2.clj8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/clojure/contrib/str_utils2.clj b/src/clojure/contrib/str_utils2.clj
index e5a541cf..b70a9ba4 100644
--- a/src/clojure/contrib/str_utils2.clj
+++ b/src/clojure/contrib/str_utils2.clj
@@ -233,9 +233,13 @@
(apply str (interpose separator coll)))
(defn chop
- "Removes the last character of string."
+ "Removes the last character of string, does nothing on a zero-length
+ string."
[#^String s]
- (subs s 0 (dec (count s))))
+ (let [size (count s)]
+ (if (zero? size)
+ s
+ (subs s 0 (dec (count s))))))
(defn chomp
"Removes all trailing newline \\n or return \\r characters from