From d991c17a25f13be1165b0301a1fe329a1814066c Mon Sep 17 00:00:00 2001 From: bluss Date: Tue, 22 Dec 2015 08:07:36 +0100 Subject: [PATCH] ArrayString::push_str: Write capacity check in safer style Use an arithmetic overflow safe conditional. --- src/array_string.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/array_string.rs b/src/array_string.rs index 154b74c..65a8a02 100644 --- a/src/array_string.rs +++ b/src/array_string.rs @@ -99,7 +99,7 @@ impl> ArrayString { pub fn push_str<'a>(&mut self, s: &'a str) -> Result<(), CapacityError<&'a str>> { use std::io::Write; - if self.len() + s.len() > self.capacity() { + if s.len() > self.capacity() - self.len() { return Err(CapacityError::new(s)); } unsafe {