Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "utils.h"
- #include <string.h>
- #include <errno.h>
- #include <stdio.h>
- #include <unistd.h>
- static void print_w(const char *p) {
- const char *q;
- int saved_errno;
- if (!p) {
- return;
- }
- q = p;
- while (*q) {
- q++;
- }
- if (q == p) {
- return;
- }
- saved_errno = errno;
- while (p < q) {
- ssize_t n = write(STDERR_FILENO, p, (size_t) (q - p));
- if (n > 0)
- p += n;
- else if (n != (ssize_t) -1 || errno != EINTR)
- break;
- }
- errno = saved_errno;
- }
Advertisement
Add Comment
Please, Sign In to add comment