Commit fec3dc5
committed
Reimplement Win32 APIs for
Reimplement them on-top of native NT APIs as done in `fileextd.lib`.
This allows more file system APIs to work on XP and below.
Affected APIs:
- File truncation (can now set end of file without multiple SetFilePointerEx calls on NT)
- Cleaner fallback impl for reparse tags
- remove_dir_all: Modern impl now supported on all NT-based systemsGetFileInformationByHandleEx and SetFileInformationByHandle
1 parent f708cc1 commit fec3dc5
6 files changed
Lines changed: 321 additions & 50 deletions
File tree
- library/std/src/sys
- fs
- io/is_terminal
- pal/windows
- c
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
591 | 591 | | |
592 | 592 | | |
593 | 593 | | |
594 | | - | |
| 594 | + | |
595 | 595 | | |
596 | 596 | | |
597 | 597 | | |
| |||
620 | 620 | | |
621 | 621 | | |
622 | 622 | | |
623 | | - | |
624 | | - | |
625 | | - | |
626 | | - | |
627 | | - | |
628 | | - | |
629 | | - | |
630 | | - | |
631 | | - | |
632 | | - | |
633 | | - | |
634 | | - | |
635 | | - | |
636 | | - | |
637 | | - | |
638 | | - | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
639 | 637 | | |
640 | 638 | | |
641 | 639 | | |
| |||
988 | 986 | | |
989 | 987 | | |
990 | 988 | | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
991 | 993 | | |
992 | 994 | | |
993 | 995 | | |
| |||
1064 | 1066 | | |
1065 | 1067 | | |
1066 | 1068 | | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
1067 | 1072 | | |
1068 | 1073 | | |
1069 | 1074 | | |
| |||
1503 | 1508 | | |
1504 | 1509 | | |
1505 | 1510 | | |
1506 | | - | |
1507 | | - | |
1508 | | - | |
1509 | | - | |
1510 | | - | |
1511 | | - | |
| 1511 | + | |
| 1512 | + | |
| 1513 | + | |
| 1514 | + | |
1512 | 1515 | | |
1513 | 1516 | | |
1514 | 1517 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
49 | 50 | | |
50 | 51 | | |
51 | 52 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| 15 | + | |
| 16 | + | |
15 | 17 | | |
16 | 18 | | |
17 | 19 | | |
| |||
485 | 487 | | |
486 | 488 | | |
487 | 489 | | |
488 | | - | |
489 | | - | |
490 | | - | |
491 | | - | |
492 | | - | |
493 | | - | |
494 | | - | |
495 | | - | |
496 | | - | |
497 | | - | |
498 | | - | |
499 | | - | |
500 | | - | |
501 | | - | |
502 | | - | |
503 | | - | |
504 | | - | |
505 | | - | |
506 | | - | |
507 | | - | |
508 | | - | |
509 | | - | |
510 | | - | |
511 | 490 | | |
512 | 491 | | |
513 | 492 | | |
| |||
769 | 748 | | |
770 | 749 | | |
771 | 750 | | |
| 751 | + | |
| 752 | + | |
| 753 | + | |
| 754 | + | |
| 755 | + | |
| 756 | + | |
| 757 | + | |
| 758 | + | |
| 759 | + | |
| 760 | + | |
| 761 | + | |
| 762 | + | |
| 763 | + | |
| 764 | + | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
| 773 | + | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2047 | 2047 | | |
2048 | 2048 | | |
2049 | 2049 | | |
| 2050 | + | |
2050 | 2051 | | |
2051 | 2052 | | |
2052 | 2053 | | |
2053 | 2054 | | |
2054 | 2055 | | |
| 2056 | + | |
2055 | 2057 | | |
2056 | 2058 | | |
| 2059 | + | |
2057 | 2060 | | |
2058 | 2061 | | |
2059 | 2062 | | |
| |||
2109 | 2112 | | |
2110 | 2113 | | |
2111 | 2114 | | |
| 2115 | + | |
2112 | 2116 | | |
| 2117 | + | |
2113 | 2118 | | |
2114 | 2119 | | |
2115 | 2120 | | |
2116 | 2121 | | |
| 2122 | + | |
| 2123 | + | |
2117 | 2124 | | |
| 2125 | + | |
2118 | 2126 | | |
| 2127 | + | |
2119 | 2128 | | |
2120 | 2129 | | |
2121 | 2130 | | |
| |||
2124 | 2133 | | |
2125 | 2134 | | |
2126 | 2135 | | |
| 2136 | + | |
2127 | 2137 | | |
2128 | 2138 | | |
2129 | 2139 | | |
| |||
2324 | 2334 | | |
2325 | 2335 | | |
2326 | 2336 | | |
| 2337 | + | |
| 2338 | + | |
2327 | 2339 | | |
| 2340 | + | |
2328 | 2341 | | |
| 2342 | + | |
2329 | 2343 | | |
2330 | 2344 | | |
2331 | 2345 | | |
| |||
0 commit comments