void errorstring_x11display(const x11display_t * x11disp, int x11_errcode, char * buffer, uint8_t buffer_size) { int err ; int x11_err ; if (!buffer_size) { err = EINVAL ; PRINTUINT8_ERRLOG(buffer_size) ; goto ONERR; } x11_err = XGetErrorText(x11disp->sys_display, x11_errcode, buffer, buffer_size) ; if (x11_err) { err = EINVAL ; TRACESYSCALL_ERRLOG("XGetErrorText", err) ; PRINTINT_ERRLOG(x11_err) ; goto ONERR; } buffer[buffer_size-1] = 0 ; return ; ONERR: if (buffer_size) { snprintf(buffer, buffer_size, "%d", x11_errcode) ; buffer[buffer_size-1] = 0 ; } TRACEEXIT_ERRLOG(err); return ; }
int init_systimer(/*out*/systimer_t* timer, sysclock_e clock_type) { int err ; clockid_t clockid = convertclockid(clock_type) ; int fd ; fd = timerfd_create(clockid, TFD_NONBLOCK|TFD_CLOEXEC) ; if (-1 == fd) { err = errno ; TRACESYSCALL_ERRLOG("timerfd_create", err) ; PRINTINT_ERRLOG(clock_type) ; goto ONERR; } else { *timer = fd ; } return 0 ; ONERR: TRACEEXIT_ERRLOG(err); return err ; }