GLib.close (original) (raw)
Function
GLibclose
since: 2.36
Declaration [src]
gboolean
g_close (
gint fd,
GError** error
)
Description [src]
This wraps the close()
call. In case of error, %errno will be preserved, but the error will also be stored as a GError
in error
. In case of success, %errno is undefined.
Besides using GError
, there is another major reason to prefer this function over the call provided by the system; on Unix, it will attempt to correctly handle EINTR
, which has platform-specific semantics.
It is a bug to call this function with an invalid file descriptor.
On POSIX platforms since GLib 2.76, this function is async-signal safe if (and only if) error
is NULL
and fd
is a valid open file descriptor. This makes it safe to call from a signal handler or a GSpawnChildSetupFunc
under those conditions. See signal(7) andsignal-safety(7) for more details.
Available since: 2.36
Parameters
fd
Type: gint
A file descriptor.
error
Type: GError **
The return location for a recoverable error.
The argument can be NULL. |
---|
If the return location is not NULL, then you must initialize it to a NULL GError*. |
The argument will be left initialized to NULL by the function if there are no errors. |
In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it. |
Return value
Type: gboolean
TRUE
on success, FALSE
if there was an error.