/*
* Test basic features of coloredstderr.
*
- * Copyright (C) 2013 Simon Ruderich
+ * Copyright (C) 2013-2014 Simon Ruderich
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#include <errno.h>
#include "../src/compiler.h"
+#include "example.h"
int main(int argc, char **argv unused) {
printf("write to stdout\n");
fflush(stdout);
- errno = 0;
+ errno = ENOMEM;
perror("error!");
- write(STDERR_FILENO, "write to stderr 2", 17);
- write(STDOUT_FILENO, "write to stdout 2", 17);
+ xwrite(STDERR_FILENO, "write to stderr 2", 17);
+ xwrite(STDOUT_FILENO, "write to stdout 2", 17);
fprintf(stderr, "\n");
fprintf(stdout, "\n");
fflush(stdout);
- /* Check usage of tracked_fds_list (at least in parts). No error checking
- * here! */
- dup2(STDERR_FILENO, 471);
- dup2(471, 42);
- write(471, "more on stderr\n", 15);
+ /* Check usage of tracked_fds_list (at least in parts). */
+ xdup2(STDERR_FILENO, 471);
+ xdup2(471, 42);
+ xwrite(471, "more on stderr\n", 15);
close(471);
- dup2(STDOUT_FILENO, 471);
- write(42, "stderr ...\n", 11);
- write(471, "more on stdout\n", 15);
+ xdup2(STDOUT_FILENO, 471);
+ xwrite(42, "stderr ...\n", 11);
+ xwrite(471, "more on stdout\n", 15);
/* Glibc uses __overflow() for this ... */
putc_unlocked('x', stderr);
putc_unlocked('\n', stdout);
/* Test invalid stuff. */
+ write(-3, "foo", 3);
close(-42);
close(-4711);
/* Can't test this, results in a segfault with the "normal" fclose(). */