ringabout
1380084f57
fixes ORC memory leaks; marks hooks with optQuirky (#24701)
closes https://github.com/nim-lang/Nim/pull/24686
closes #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 f0b5bf359e)
2025-03-03 14:03:27 +01:00
..
2025-01-14 07:46:40 +01:00
2024-03-18 20:27:00 +01:00
2023-08-06 14:26:21 +02:00
2023-12-15 10:20:57 +01:00
2025-01-14 09:08:13 +01:00
2024-04-10 14:41:16 +02:00
2024-04-16 12:46:59 +02:00
2024-07-12 15:23:09 +02:00
2023-10-11 17:44:14 +02:00
2023-08-06 14:26:21 +02:00
2024-09-27 11:12:39 +02:00
2025-01-14 13:22:32 +01:00
2025-01-15 10:17:37 +01:00
2022-09-28 15:05:01 +02:00
2022-11-30 21:51:13 +01:00
2024-08-28 20:46:36 +02:00
2024-09-03 09:19:52 +02:00
2024-07-12 15:23:09 +02:00
2024-07-12 15:23:09 +02:00
2025-01-14 07:53:29 +01:00
2024-06-07 09:01:30 +02:00
2025-01-14 13:11:55 +01:00
2025-01-14 07:53:29 +01:00
2025-01-14 07:46:40 +01:00
2025-01-14 07:46:40 +01:00
2024-03-28 11:04:12 +01:00
2025-01-15 10:17:07 +01:00
2023-06-18 16:06:14 +02:00
2025-01-14 13:23:26 +01:00
2025-01-14 07:47:13 +01:00
2017-01-07 22:35:09 +01:00
2022-06-10 20:40:08 +02:00
2023-10-29 14:48:11 +01:00
2024-04-22 13:04:30 +02:00
2023-08-06 14:26:21 +02:00
2025-01-14 07:47:19 +01:00
2023-12-17 18:43:52 +01:00
2023-11-20 21:12:13 +01:00
2025-01-14 07:46:40 +01:00
2025-01-14 07:46:40 +01:00
2024-08-28 20:46:36 +02:00
2025-01-14 07:35:19 +01:00
2023-10-29 14:48:11 +01:00
2023-10-29 14:48:11 +01:00
2023-10-29 14:48:11 +01:00
2025-01-14 07:46:40 +01:00
2023-09-01 06:41:39 +02:00
2023-10-29 14:48:11 +01:00
2025-01-15 10:18:58 +01:00
2020-06-01 19:21:41 +02:00
2025-01-14 13:15:46 +01:00
2024-06-04 09:50:35 +02:00
2023-12-15 08:13:25 +01:00
2025-01-15 10:21:20 +01:00
2025-01-14 07:50:41 +01:00
2023-12-13 10:29:58 +01:00
2025-01-14 07:46:40 +01:00
2025-01-14 07:31:33 +01:00
2023-12-13 10:39:10 +01:00
2023-12-15 08:13:25 +01:00
2025-03-03 14:03:27 +01:00
2025-01-14 07:46:40 +01:00
2025-01-15 10:17:07 +01:00
2025-01-14 07:34:32 +01:00
2024-07-20 05:40:38 +02:00
2025-01-14 13:17:34 +01:00
2025-01-14 07:46:40 +01:00
2021-01-12 09:36:51 +01:00
2025-01-14 07:46:40 +01:00
2024-07-09 09:29:45 +02:00
2024-04-05 08:54:48 +02:00
2025-01-14 07:35:36 +01:00
2024-01-05 08:17:08 +01:00
2025-01-14 07:45:59 +01:00
2024-09-16 20:45:00 +02:00
2025-01-14 07:46:40 +01:00
2025-01-15 10:20:18 +01:00
2024-07-17 18:25:19 +02:00
2023-12-15 08:13:25 +01:00
2023-12-15 08:13:25 +01:00
2024-04-10 14:41:16 +02:00
2023-10-29 14:48:11 +01:00
2023-10-29 14:48:11 +01:00
2025-01-14 07:46:40 +01:00
2023-10-29 14:48:11 +01:00
2024-08-12 15:33:26 +02:00
2023-04-17 20:55:22 +02:00
2024-04-10 14:41:16 +02:00
2025-01-15 10:22:25 +01:00
2023-08-06 14:26:21 +02:00
2025-01-14 07:34:32 +01:00
2024-09-03 09:18:38 +02:00
2024-09-18 22:45:19 +02:00
2022-08-24 09:44:16 +02:00
2025-01-14 07:51:55 +01:00
2023-10-29 14:48:11 +01:00
2023-12-17 18:43:52 +01:00
2025-01-14 07:31:51 +01:00
2023-03-03 07:36:38 +01:00
2023-10-29 14:48:11 +01:00
2018-05-27 19:19:12 +02:00
2025-03-03 14:02:48 +01:00
2023-10-29 14:48:11 +01:00
2024-04-10 14:41:16 +02:00
2024-09-03 09:19:52 +02:00
2023-07-02 22:36:05 +02:00
2025-01-14 07:39:32 +01:00
2023-10-29 14:48:11 +01:00
2024-09-06 11:26:24 +02:00
2023-11-06 18:33:28 +01:00
2023-08-10 14:26:40 +02:00
2020-09-11 01:04:07 +02:00
2023-10-29 14:48:11 +01:00
2025-01-27 08:49:33 +01:00
2025-01-14 12:15:59 +01:00
2025-01-14 07:52:18 +01:00
2025-01-20 12:48:10 +01:00
2025-01-14 07:48:01 +01:00
2025-01-15 10:16:12 +01:00
2025-01-14 12:15:59 +01:00
2025-01-14 07:46:40 +01:00
2025-01-14 09:06:58 +01:00
2025-01-14 07:50:33 +01:00
2025-01-15 10:19:40 +01:00
2025-01-14 07:46:40 +01:00
2025-01-20 18:46:41 +01:00
2025-02-04 20:03:39 +01:00
2022-12-11 16:58:50 +01:00
2025-01-31 09:37:31 +01:00
2025-01-31 09:37:46 +01:00
2025-01-15 10:21:20 +01:00
2024-08-16 06:33:43 +02:00
2025-03-03 14:03:09 +01:00
2023-11-20 21:12:13 +01:00
2025-01-14 07:46:40 +01:00
2024-03-16 08:35:18 +08:00
2025-01-14 07:46:40 +01:00
2024-05-08 09:10:48 -06:00
2024-03-15 18:20:10 +01:00
2024-04-10 14:41:16 +02:00
2023-08-10 14:26:40 +02:00
2025-01-24 05:10:36 +01:00
2025-01-14 07:32:12 +01:00
2023-10-29 14:48:11 +01:00
2025-01-14 09:08:13 +01:00
2025-01-14 13:23:26 +01:00
2023-10-29 14:48:11 +01:00
2024-08-20 11:57:47 +02:00
2025-03-03 14:02:03 +01:00
2023-12-12 16:54:50 +01:00
2025-03-03 14:02:03 +01:00
2025-01-14 07:46:40 +01:00
2025-03-03 14:02:03 +01:00
2023-08-10 14:26:40 +02:00
2024-04-10 14:41:16 +02:00
2025-01-27 08:49:58 +01:00
2023-10-29 14:48:11 +01:00
2025-01-14 12:24:00 +01:00
2023-12-25 07:12:54 +01:00