Commit 41637db
fixes ORC memory leaks; marks hooks with optQuirky (nim-lang#24701)
closes nim-lang#24686
closes nim-lang#24693
```nim
# v.nim
import std/[json]
var test: seq[string]
var testData: JsonNode
try:
## Fails
testData = parseJson("""[{"id": 1"}, {"id": "2"}]""")
## Works
# testdata = parseJson("""[{"id": "1"}, {"id": "2"}]""")
## Fails
# let stream = newStringStream("""[{"id": 1"}, {"id": "2"}]""")
# testData = parseJson(stream, "input", false, false)
# stream.close()
except:
testData = %* []
for t in testData:
test.add(t["id"].getStr())
echo $test
```
With this PR:
```
==66425== LEAK SUMMARY:
==66425== definitely lost: 0 bytes in 0 blocks
==66425== indirectly lost: 0 bytes in 0 blocks
==66425== possibly lost: 0 bytes in 0 blocks
==66425== still reachable: 16,512 bytes in 2 blocks
==66425== suppressed: 0 bytes in 0 blocks
==66425== Reachable blocks (those to which a pointer was found) are not shown.
==66425== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==66425==
==66425== For lists of detected and suppressed errors, rerun with: -s
==66425== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
```
(cherry picked from commit f0b5bf3)1 parent b7eefc3 commit 41637db
1 file changed
+2
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1179 | 1179 | | |
1180 | 1180 | | |
1181 | 1181 | | |
| 1182 | + | |
| 1183 | + | |
1182 | 1184 | | |
1183 | 1185 | | |
1184 | 1186 | | |
| |||
0 commit comments