postgresql-ocaml
postgresql-ocaml copied to clipboard
use Unix.file_descr for sockect
The socket method is unusable with type int, for instance with select in async mode.
This solves the problem. I think there is no way in Stdlib to convert int to Unix.file_descr so I used the same code as OCaml uses for stdin and alike.
I did not do it in the C.stub because of the comparison with -1 and to keep the [@untagged] flag.
Should be tested on windows because there file_descr are not int. But if there is a problem, it should be there with or without this patch, PQsocket does return int on both platforms. So the conversion should actually make it better on windows.