From 881d1ee57b99c42e016fe0f8d2ca64a253f75960 Mon Sep 17 00:00:00 2001 From: Miran Date: Tue, 23 Jun 2020 16:15:37 +0200 Subject: [PATCH] fix #14750, don't allocate too much in newWideCString (#14773) --- lib/system/widestrs.nim | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/system/widestrs.nim b/lib/system/widestrs.nim index a7a514446..aabcbdc90 100644 --- a/lib/system/widestrs.nim +++ b/lib/system/widestrs.nim @@ -56,7 +56,7 @@ else: WideCStringObj* = WideCString template createWide(a; L) = - unsafeNew(a, L * 4 + 2) + unsafeNew(a, L) proc ord(arg: Utf16Char): int = int(cast[uint16](arg)) @@ -138,8 +138,7 @@ iterator runes(s: cstring, L: int): int = yield result proc newWideCString*(source: cstring, L: int): WideCStringObj = - createWide(result, L * 4 + 2) - #result = cast[wideCString](alloc(L * 4 + 2)) + createWide(result, L * 2 + 2) var d = 0 for ch in runes(source, L):