X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=tests%2Fexample.c;h=0fee9733f100a28dba8f0226a8aada01059acef4;hb=7adfbfd2cf1d46144c41a75aa501938607a316b5;hp=c615211c11872600f005cd5cc3ecac98be3acc6c;hpb=ad50ad9c54dea706b45d63dd5fdf1e381158f83f;p=coloredstderr%2Fcoloredstderr.git diff --git a/tests/example.c b/tests/example.c index c615211..0fee973 100644 --- a/tests/example.c +++ b/tests/example.c @@ -17,13 +17,17 @@ * along with this program. If not, see . */ +#include + #include #include #include #include +#include "../src/compiler.h" + -int main(int argc, char **argv) { +int main(int argc, char **argv unused) { fprintf(stderr, "write to stderr: %d\n", argc); printf("write to stdout\n"); fflush(stdout); @@ -36,6 +40,21 @@ int main(int argc, char **argv) { 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); + close(471); + dup2(STDOUT_FILENO, 471); + write(42, "stderr ...\n", 11); + write(471, "more on stdout\n", 15); + + /* Glibc uses __overflow() for this ... */ + putc_unlocked('x', stderr); + putc_unlocked('\n', stdout); return EXIT_SUCCESS; }