On Nov 14, 2011, at 19:30 , Duncan Cross wrote: > > This is fantastic news! Thanks so much for your work, and thanks too > to the anonymous sponsor. > > One thing - I'm not certain this is related to the addition of > callbacks, but I was just experimenting with Win32 calls and found > that GetLastError() seems to return the wrong value (127, > ERROR_PROC_NOT_FOUND) the first time it's called. This is a minimal > test case: > > local ffi = require("ffi") > > ffi.cdef [[ > uint32_t GetLastError(); > void SetLastError(uint32_t code); > ]] > > ffi.C.SetLastError(0) > print(ffi.C.GetLastError()) -- 127 > ffi.C.SetLastError(0) > print(ffi.C.GetLastError()) -- 0 > > (I'm explicitly setting the error here, but I discovered it because it > was hiding a parameter error while I was experimenting with trying to > call RegisterClassExA().) > > -Duncan > I would not suggest trying to get errors using Get/SetLastError as they will be invalidated by the vm. If you really want the error use ffi.errno(). -- James
Attachment:
smime.p7s
Description: S/MIME cryptographic signature