Skip to content

Commit

Permalink
(charmap_conversion): Pass name of output file not stream for output …
Browse files Browse the repository at this point in the history
…file. Open output file here.
  • Loading branch information
Ulrich Drepper committed Mar 11, 2008
1 parent f3dc341 commit 5484ff5
Showing 1 changed file with 14 additions and 2 deletions.
16 changes: 14 additions & 2 deletions iconv/iconv_charmap.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* Convert using charmaps and possibly iconv().
Copyright (C) 2001, 2005, 2006 Free Software Foundation, Inc.
Copyright (C) 2001, 2005, 2006, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2001.
Expand Down Expand Up @@ -94,7 +94,8 @@ static int process_file (struct convtable *tbl, FILE *input, FILE *output);
int
charmap_conversion (const char *from_code, struct charmap_t *from_charmap,
const char *to_code, struct charmap_t *to_charmap,
int argc, int remaining, char *argv[], FILE *output)
int argc, int remaining, char *argv[],
const char *output_file)
{
struct convtable *cvtbl;
int status = EXIT_SUCCESS;
Expand Down Expand Up @@ -132,6 +133,17 @@ charmap_conversion (const char *from_code, struct charmap_t *from_charmap,
if (cvtbl == NULL)
return EXIT_FAILURE;

/* Determine output file. */
FILE *output;
if (output_file != NULL && strcmp (output_file, "-") != 0)
{
output = fopen (output_file, "w");
if (output == NULL)
error (EXIT_FAILURE, errno, _("cannot open output file"));
}
else
output = stdout;

/* We can now start the conversion. */
if (remaining == argc)
{
Expand Down

0 comments on commit 5484ff5

Please sign in to comment.