fix(posix): DIR 已是 t.CPtr(i8*),去掉多余的 | t.CPtr 以免多叠一层指针
opendir/readdir/closedir 三个形参与 os/_posix.listdir 的局部变量统一为 DIR(= i8*,即 C 的 DIR*):785e825 把 DIR 由 t.CVoid | t.CPtr 清成裸 t.CPtr 后,DIR | t.CPtr 合并成 i8**(双重指针),opendir 的 declare 变成 i8** 而 C 侧是 DIR* 不改动 win32file.vp 的 HANDLE | t.CPtr(PHANDLE=void**)、win32sync.vp 的 VOIDPTR | t.CPtr(PVOID*)、vqt6/_qtwidgets.vp 的 t.CPtr | t.CPtr(char**)——那些多叠一层是有意的
This commit is contained in:
1 parent
785e825518
commit
88b81c04ed
2 files changed
+4
-4
No files matched your search
+1
-1
@@ -143,7 +143,7 @@ def listdir(path: str, out_names: str, max_count: ULONG) -> ULONG:
|
||||
文件名通过 _mbuddy 分配内存。
|
||||
max_count 为 out_names 数组最大容量。
|
||||
返回实际列举的条目数。失败返回 0。"""
|
||||
dirp: posix.DIR | t.CPtr = posix.opendir(path)
|
||||
dirp: posix.DIR = posix.opendir(path)
|
||||
if dirp == None:
|
||||
return 0
|
||||
|
||||
|
||||
@@ -183,9 +183,9 @@ extern def fstat(fd: INT, buf: Stat | t.CPtr) -> INT
|
||||
# =============================================================================
|
||||
# Directory operations (6)
|
||||
# =============================================================================
|
||||
extern def opendir(name: t.CConst | str) -> DIR | t.CPtr
|
||||
extern def readdir(dirp: DIR | t.CPtr) -> Dirent | t.CPtr
|
||||
extern def closedir(dirp: DIR | t.CPtr) -> INT
|
||||
extern def opendir(name: t.CConst | str) -> DIR
|
||||
extern def readdir(dirp: DIR) -> Dirent | t.CPtr
|
||||
extern def closedir(dirp: DIR) -> INT
|
||||
extern def mkdir(path: t.CConst | str, mode: mode_t) -> INT
|
||||
extern def rmdir(path: t.CConst | str) -> INT
|
||||
extern def getcwd(buf: CHARPTR, size: t.CSizeT) -> CHARPTR
|
||||
|
||||
Reference in new issue
Block a user