diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2016-01-21 15:30:48 +0100 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2016-01-21 15:30:48 +0100 |
commit | b2854f21d6705f7957a21a0cc1a8688348a7fab8 (patch) | |
tree | 2d4275e1850ff736071a0e826ae88c59387bceb6 | |
parent | 263ee143f103e86daef167a04ec1886130701334 (diff) | |
parent | df211b24fdc221175fb0ce4dfef12a5293ed0c37 (diff) | |
download | Nim-b2854f21d6705f7957a21a0cc1a8688348a7fab8.tar.gz |
Merge pull request #3753 from yglukhov/js-streams
Dont convert string to cstring when writing to stream.
-rw-r--r-- | lib/pure/streams.nim | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/pure/streams.nim b/lib/pure/streams.nim index 38e91fee4..bb6175a12 100644 --- a/lib/pure/streams.nim +++ b/lib/pure/streams.nim @@ -148,7 +148,10 @@ proc write*[T](s: Stream, x: T) = proc write*(s: Stream, x: string) = ## writes the string `x` to the the stream `s`. No length field or ## terminating zero is written. - writeData(s, cstring(x), x.len) + when nimvm: + writeData(s, cstring(x), x.len) + else: + if x.len > 0: writeData(s, unsafeAddr x[0], x.len) proc writeLn*(s: Stream, args: varargs[string, `$`]) {.deprecated.} = ## **Deprecated since version 0.11.4:** Use **writeLine** instead. |