diff mp_msg.c @ 17931:ed9950b8200d

The fix in mp_msg.c avoids a core dump when iconv_open() fails, the other just makes it possible to compile if USE_ICONV is undefined. Patch by Bjorn Sandell (biorn _At_ chalmers _Dot_ se).
author albeu
date Fri, 24 Mar 2006 02:31:29 +0000
parents 0d7cc103ed1e
children 03170287aea9
line wrap: on
line diff
--- a/mp_msg.c	Fri Mar 24 01:32:04 2006 +0000
+++ b/mp_msg.c	Fri Mar 24 02:31:29 2006 +0000
@@ -102,6 +102,10 @@
         msgiconv = iconv_open(mp_msg_charset, MSG_CHARSET);
         old_charset = strdup(mp_msg_charset);
       }
+      if (msgiconv == (iconv_t)(-1)) {
+        fprintf(stderr,"iconv: conversion from %s to %s unsupported\n"
+               ,mp_msg_charset,MSG_CHARSET);
+      }else{
       memset(tmp2, 0, MSGSIZE_MAX);
       while (iconv(msgiconv, &in, &inlen, &out, &outlen) == -1) {
         if (!inlen || !outlen)
@@ -112,6 +116,7 @@
       strncpy(tmp, tmp2, MSGSIZE_MAX);
       tmp[MSGSIZE_MAX-1] = 0;
       tmp[MSGSIZE_MAX-2] = '\n';
+      }
     }
 #endif