diff --git a/asyncdispatch2/transports/datagram.nim b/asyncdispatch2/transports/datagram.nim index 008e8023..1fdc64c9 100644 --- a/asyncdispatch2/transports/datagram.nim +++ b/asyncdispatch2/transports/datagram.nim @@ -535,7 +535,7 @@ proc send*(transp: DatagramTransport, pbytes: pointer, transp.resumeWrite() return retFuture -proc send*(transp: DatagramTransport, msg: string): Future[void] = +proc send*(transp: DatagramTransport, msg: var string): Future[void] = ## Send string ``msg`` using transport ``transp`` to remote destination ## address which was bounded on transport. var retFuture = FutureGCString[void]() @@ -549,7 +549,7 @@ proc send*(transp: DatagramTransport, msg: string): Future[void] = transp.resumeWrite() return retFuture -proc send*[T](transp: DatagramTransport, msg: seq[T]): Future[void] = +proc send*[T](transp: DatagramTransport, msg: var seq[T]): Future[void] = ## Send string ``msg`` using transport ``transp`` to remote destination ## address which was bounded on transport. var retFuture = FutureGCSeq[void, T]() @@ -576,7 +576,7 @@ proc sendTo*(transp: DatagramTransport, pbytes: pointer, nbytes: int, transp.resumeWrite() return retFuture -proc sendTo*(transp: DatagramTransport, msg: string, +proc sendTo*(transp: DatagramTransport, msg: var string, remote: TransportAddress): Future[void] = ## Send string ``msg`` using transport ``transp`` to remote destination ## address ``remote``. @@ -592,7 +592,7 @@ proc sendTo*(transp: DatagramTransport, msg: string, transp.resumeWrite() return retFuture -proc sendTo*[T](transp: DatagramTransport, msg: seq[T], +proc sendTo*[T](transp: DatagramTransport, msg: var seq[T], remote: TransportAddress): Future[void] = ## Send sequence ``msg`` using transport ``transp`` to remote destination ## address ``remote``. diff --git a/asyncdispatch2/transports/stream.nim b/asyncdispatch2/transports/stream.nim index 0d227647..e875c8c7 100644 --- a/asyncdispatch2/transports/stream.nim +++ b/asyncdispatch2/transports/stream.nim @@ -882,7 +882,7 @@ proc write*(transp: StreamTransport, pbytes: pointer, transp.resumeWrite() return retFuture -proc write*(transp: StreamTransport, msg: string): Future[int] = +proc write*(transp: StreamTransport, msg: var string): Future[int] = ## Write data from string ``msg`` using transport ``transp``. var retFuture = FutureGCString[int]() transp.checkClosed(retFuture) @@ -895,7 +895,7 @@ proc write*(transp: StreamTransport, msg: string): Future[int] = transp.resumeWrite() return retFuture -proc write*[T](transp: StreamTransport, msg: seq[T]): Future[int] = +proc write*[T](transp: StreamTransport, msg: var seq[T]): Future[int] = ## Write sequence ``msg`` using transport ``transp``. var retFuture = FutureGCSeq[int, T]() transp.checkClosed(retFuture) diff --git a/tests/testserver.nim b/tests/testserver.nim index 813b6313..8343d84f 100644 --- a/tests/testserver.nim +++ b/tests/testserver.nim @@ -40,7 +40,8 @@ proc serveUdataStreamClient(server: StreamServer, transp: StreamTransport) {.async.} = var udata = getUserData[CustomData](server) var line = await transp.readLine() - discard await transp.write(line & udata.test & "\r\n") + var msg = line & udata.test & "\r\n" + discard await transp.write(msg) transp.close() proc customServerTransport(server: StreamServer,