X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=psi.d%2Fglob.psi;h=4e5589a579fa5b1470e7b074f4b2de62a1986663;hp=8fc3b0b31c0302a728338c47034a66a42573ff5d;hb=09529efcde471127419e141807b83b37077003a0;hpb=b78637d9020222f1032349f231c0dc84a69797bc diff --git a/psi.d/glob.psi b/psi.d/glob.psi index 8fc3b0b..4e5589a 100644 --- a/psi.d/glob.psi +++ b/psi.d/glob.psi @@ -1,7 +1,12 @@ +#include + function psi\glob(string $pattern, int $flags, array &$glob = NULL, callable $errfn = NULL) : int { let path = strval($pattern); let flags = intval($flags); - let err = callback intval($errfn( + let err = callback( + epath, + eerrno + ) as intval($errfn( to_string(epath), to_int(eerrno) )); @@ -22,4 +27,5 @@ function psi\glob(string $pattern, int $flags, array &$glob = NULL, callable $er to_int(gl_flags), to_array(*gl_pathv, gl_pathc + gl_offs, to_string(*gl_pathv)) ); + free globfree(buf); }