diff --git a/util/ChangeLog b/util/ChangeLog index 6784de7a3..49d5734ae 100644 --- a/util/ChangeLog +++ b/util/ChangeLog @@ -1,3 +1,14 @@ +2004-12-20 Werner Koch + + * strgutil.c (handle_iconv_error): Turn diagnostics into warnings + so that gpg does not return with failure. + (native_to_utf8, utf8_to_native): Ditto. + +2004-12-16 Werner Koch + + * iobuf.c (fd_cache_strcmp) [W32]: Casting is a Bad Thing. Cast to + an unsigned char pointer and to an unsigned integer. + 2004-12-18 David Shaw * ttyio.c: Use only HAVE_LIBREADLINE to detect readline diff --git a/util/iobuf.c b/util/iobuf.c index 5f0e84383..2cbde7f90 100644 --- a/util/iobuf.c +++ b/util/iobuf.c @@ -146,7 +146,7 @@ fd_cache_strcmp (const char *a, const char *b) || (*a == '\\' && *b == '/')) ) break; } - return *(const unsigned *)a - *(const unsigned *)b; + return *(const unsigned char *)a - *(const unsigned char *)b; #else return strcmp (a, b); #endif diff --git a/util/strgutil.c b/util/strgutil.c index 20faa64f4..2167cb9fd 100644 --- a/util/strgutil.c +++ b/util/strgutil.c @@ -451,10 +451,10 @@ static void handle_iconv_error (const char *to, const char *from, int use_fallback) { if (errno == EINVAL) - log_error (_("conversion from `%s' to `%s' not available\n"), + log_info (_("conversion from `%s' to `%s' not available\n"), from, to); else - log_error (_("iconv_open failed: %s\n"), strerror (errno)); + log_info (_("iconv_open failed: %s\n"), strerror (errno)); if (use_fallback) { @@ -645,7 +645,7 @@ native_to_utf8( const char *string ) if ( iconv (cd, (ICONV_CONST char **)&inptr, &inbytes, &outptr, &outbytes) == (size_t)-1) { - log_error (_("conversion from `%s' to `%s' failed: %s\n"), + log_info (_("conversion from `%s' to `%s' failed: %s\n"), active_charset_name, "utf-8", strerror (errno)); /* We don't do any conversion at all but use the strings as is. */ strcpy (buffer, string); @@ -919,7 +919,7 @@ utf8_to_native( const char *string, size_t length, int delim ) outbuf = outptr = m_alloc (outbytes); if ( iconv (cd, (ICONV_CONST char **)&inptr, &inbytes, &outptr, &outbytes) == (size_t)-1) { - log_error (_("conversion from `%s' to `%s' failed: %s\n"), + log_info (_("conversion from `%s' to `%s' failed: %s\n"), "utf-8", active_charset_name, strerror (errno)); /* Didn't worked out. Temporary disable the use of * iconv and fall back to our old code. */