Index: charsetConv.c
--- charsetConv.c.orig	2008-11-18 22:33:11 +0100
+++ charsetConv.c	2008-11-30 11:20:02 +0100
@@ -266,10 +266,12 @@
 int wchar_to_native(const wchar_t *wchar, char *native, size_t len)
 {
 #ifdef HAVE_ICONV_H
+	int l;
 	int mangled;
 	int r;
 	initialize_to_native();
-	len = wcsnlen(wchar,len);
+	l = wcslen(wchar);
+	len = (l > len ? len : l);
 	r=safe_iconv(to_native, wchar, native, len, &mangled);
 	native[r]='\0';
 	return r;
Index: config.c
--- config.c.orig	2008-11-28 23:24:37 +0100
+++ config.c	2008-11-30 11:19:42 +0100
@@ -707,13 +707,7 @@
 	memcpy(devices, const_devices,
 	       nr_const_devices*sizeof(struct device));
 
-    (void) ((parse(CONF_FILE,1) |
-	     parse(LOCAL_CONF_FILE,1) |
-	     parse(SYS_CONF_FILE,1)) ||
-	    (parse(OLD_CONF_FILE,1) |
-	     parse(OLD_LOCAL_CONF_FILE,1)));
-    /* the old-name configuration files only get executed if none of the
-     * new-name config files were used */
+    (void)parse(SYS_CONF_FILE, 1);
 
     homedir = get_homedir();
     if ( homedir ){
