Returns a string corresponding to the given error code, e.g. “no such process”. Unlike strerror(), this always returns a string in UTF-8 encoding, and the pointer is guaranteed to remain valid for the lifetime of the process.
Note that the string may be translated according to the current locale.
The value of %errno will not be changed by this function. However, it may be changed by intermediate function calls, so you should save its value as soon as the call returns:
int saved_errno; ret = read (blah); saved_errno = errno; g_strerror (saved_errno);