aboutsummaryrefslogtreecommitdiff
path: root/iconv
diff options
context:
space:
mode:
Diffstat (limited to 'iconv')
-rw-r--r--iconv/Makefile3
-rw-r--r--iconv/gconv_db.c10
-rw-r--r--iconv/iconv_prog.c6
3 files changed, 12 insertions, 7 deletions
diff --git a/iconv/Makefile b/iconv/Makefile
index 8b4f605e5b..431100d7da 100644
--- a/iconv/Makefile
+++ b/iconv/Makefile
@@ -37,12 +37,11 @@ endif
distribute = gconv_builtin.h gconv_int.h loop.c skeleton.c
others = iconv_prog
+install-others = $(inst_bindir)/iconv
CFLAGS-gconv_conf.c = -DGCONV_PATH='"$(gconvdir)"'
include ../Rules
-subdir_install: $(inst_bindir)/iconv
-
$(inst_bindir)/iconv: $(objpfx)iconv_prog $(+force)
$(do-install-program)
diff --git a/iconv/gconv_db.c b/iconv/gconv_db.c
index 11914547c7..e6253b8380 100644
--- a/iconv/gconv_db.c
+++ b/iconv/gconv_db.c
@@ -294,7 +294,10 @@ find_derivation (const char *toset, const char *toset_expand,
result = derivation_lookup (fromset_expand ?: fromset, toset_expand ?: toset,
handle, nsteps);
if (result == GCONV_OK)
- return result;
+ {
+ __libc_lock_unlock (lock);
+ return result;
+ }
/* ### TODO
For now we use a simple algorithm with quadratic runtime behaviour.
@@ -527,7 +530,10 @@ __gconv_find_transform (const char *toset, const char *fromset,
/* If we don't have a module database return with an error. */
if (__gconv_modules_db == NULL)
- return GCONV_NOCONV;
+ {
+ __libc_lock_unlock (lock);
+ return GCONV_NOCONV;
+ }
/* See whether the names are aliases. */
if (__gconv_alias_db != NULL)
diff --git a/iconv/iconv_prog.c b/iconv/iconv_prog.c
index 7dd0f3422c..8f05d57a18 100644
--- a/iconv/iconv_prog.c
+++ b/iconv/iconv_prog.c
@@ -1,5 +1,5 @@
/* Convert text in given files from the specified from-set to the to-set.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@@ -295,7 +295,7 @@ print_version (FILE *stream, struct argp_state *state)
Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\
-"), "1998");
+"), "1999");
fprintf (stream, gettext ("Written by %s.\n"), "Ulrich Drepper");
}
@@ -319,7 +319,7 @@ process_block (iconv_t cd, const char *addr, size_t len, FILE *output)
if (outptr != outbuf)
{
/* We have something to write out. */
- if (fwrite (outbuf, 1, outptr - outbuf, output) < outptr - outbuf
+ if (fwrite (outbuf, 1, outptr - outbuf, output) < outptr - outbuf
|| ferror (output))
{
/* Error occurred while printing the result. */