summary refs log blame commit diff stats
path: root/tests/arc/tasyncorc.nim
blob: 63703b559b6a4005920bea28eb3e87c56c50dae4 (plain) (tree)
1
2
3
4


                                              
                   





















                                                           
discard """
  output: '''230000'''
  cmd: '''nim c --gc:orc -d:useMalloc $file'''
  valgrind: "leaks"
"""

# bug #14402

import asynchttpserver, asyncdispatch, httpclient, strutils

proc cb(req: Request) {.async, gcsafe.} =
  const html = " ".repeat(230000)
  await req.respond(Http200, html)

var server = newAsyncHttpServer()
asyncCheck server.serve(Port(8080), cb)

proc test {.async.} =
  var
    client = newAsyncHttpClient()
    resp = await client.get("http://localhost:8080")

  let x = (await resp.body).len
  echo x # crash

waitFor test()