diff options
Diffstat (limited to 'components/script/dom/bindings')
-rw-r--r-- | components/script/dom/bindings/conversions.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/components/script/dom/bindings/conversions.rs b/components/script/dom/bindings/conversions.rs index eed41d6f926..23105fa7810 100644 --- a/components/script/dom/bindings/conversions.rs +++ b/components/script/dom/bindings/conversions.rs @@ -394,8 +394,9 @@ impl<T: Float + FromJSValConvertible<Config=()>> FromJSValConvertible for Finite impl ToJSValConvertible for str { fn to_jsval(&self, cx: *mut JSContext, rval: MutableHandleValue) { + let mut string_utf16: Vec<u16> = Vec::with_capacity(self.len()); unsafe { - let string_utf16: Vec<u16> = self.utf16_units().collect(); + string_utf16.extend(self.utf16_units()); let jsstr = JS_NewUCStringCopyN(cx, string_utf16.as_ptr() as *const i16, string_utf16.len() as libc::size_t); if jsstr.is_null() { |