Files
Nim/tests/stdlib
c-blake d070ccbc03 Fix closeHandle bug, add setFileSize, make resize work on Windows (#21375)
* Add general purpose `setFileSize` (unexported for now).  Use to simplify
`memfiles.open` as well as make robust (via hard allocation, not merely
`ftruncate` address space allocation) on systems with `posix_fallocate`.

As part of this, fix a bad `closeHandle` return check bug on Windows and
add `MemFile.resize` for Windows now that setFileSize makes that easier.

* Adapt existing test to exercise newly portable `MemFile.resize`.

* Since Apple has never provided `posix_fallocate`, provide a fallback.
This is presently written in terms of `ftruncate`, but it can be
improved to use `F_PREALLOCATE` instead, as mentioned in a comment.

(cherry picked from commit c91ef1a09f)
2023-02-16 16:37:44 +01:00
..
2020-10-29 18:12:14 +01:00
2020-11-13 16:15:13 +08:00
2020-12-28 14:13:21 +01:00
2020-11-05 14:00:49 +01:00
2021-01-07 19:16:26 +01:00
2020-12-28 14:13:21 +01:00
2020-12-28 14:13:21 +01:00
2021-01-05 20:51:51 +01:00
2021-07-27 09:36:19 +02:00
2021-07-17 07:54:47 +02:00
2020-12-28 14:13:21 +01:00
2020-12-28 14:13:21 +01:00
2021-03-26 13:05:51 +01:00
2021-04-06 16:21:58 +02:00
2022-03-24 13:25:20 +01:00
2021-08-19 11:35:40 +02:00
2020-12-28 14:13:21 +01:00
2020-12-29 13:27:08 +01:00
2021-07-05 10:12:58 -07:00
2020-11-23 19:53:57 +01:00
2020-12-27 14:45:57 +01:00
2019-05-16 21:06:04 +02:00
2021-09-29 09:32:39 +02:00
2020-11-24 19:06:41 +01:00
2020-12-28 14:13:21 +01:00
2021-01-22 19:51:11 +01:00
2021-02-06 17:33:11 +01:00
2020-10-18 12:57:13 -04:00
2021-02-22 19:58:37 +01:00
2021-03-08 10:39:39 +01:00
2021-06-16 11:31:20 +02:00
2021-08-12 09:21:01 -07:00
2018-12-11 21:23:21 +01:00
2021-08-23 00:13:39 +02:00
2021-09-02 12:10:14 +02:00
2020-11-24 19:06:41 +01:00
2021-07-19 12:43:31 +02:00
2020-12-28 14:13:21 +01:00
2021-02-09 13:04:36 +01:00
2020-12-28 14:13:21 +01:00
2020-12-28 14:13:21 +01:00
2021-04-09 11:51:51 +02:00
2020-07-12 03:31:03 -04:00
2018-04-30 11:16:56 +02:00
2020-12-28 14:13:21 +01:00