Use static list of descriptors to reduce mallocs.

Only if file descriptors with a value > 255 occur, the list
implementation is used.
This commit is contained in:
Simon Ruderich
2013-06-07 01:27:58 +02:00
parent 5c8b5233fb
commit c2097785e7
5 changed files with 134 additions and 42 deletions

View File

@@ -36,6 +36,17 @@ 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);
return EXIT_SUCCESS;
}

View File

@@ -3,3 +3,6 @@
>STDERR>error!: Success
<STDERR<>STDERR>write to stderr 2<STDERR<write to stdout 2>STDERR>
<STDERR<
>STDERR>more on stderr
<STDERR<>STDERR>stderr ...
<STDERR<more on stdout