about summary refs log tree commit diff
path: root/wcsmbs/wcsmbsload.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-09-05 21:22:05 +0000
committerRoland McGrath <roland@gnu.org>2002-09-05 21:22:05 +0000
commit6e606fad8da37fb175205244c794c5aae58ffda1 (patch)
tree87522d73780fe906b97478910a5db5bb15ad1f5b /wcsmbs/wcsmbsload.c
parent51387e0b86b1ebb066206e0fdbd3dc3c0afec236 (diff)
downloadglibc-6e606fad8da37fb175205244c794c5aae58ffda1.tar.gz
glibc-6e606fad8da37fb175205244c794c5aae58ffda1.tar.xz
glibc-6e606fad8da37fb175205244c794c5aae58ffda1.zip
* ctype/ctype-info.c: Renamed __ctype_old_* symbols to __ctype_*.
	* locale/lc-ctype.c (_nl_postload_ctype): Likewise.
Diffstat (limited to 'wcsmbs/wcsmbsload.c')
-rw-r--r--wcsmbs/wcsmbsload.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/wcsmbs/wcsmbsload.c b/wcsmbs/wcsmbsload.c
index b2ee83459b..bf23d25cac 100644
--- a/wcsmbs/wcsmbsload.c
+++ b/wcsmbs/wcsmbsload.c
@@ -166,12 +166,7 @@ __wcsmbs_load_conv (struct locale_data *new_category)
       /* Allocate the gconv_fcts structure.  */
       new_fcts = malloc (sizeof *new_fcts);
       if (new_fcts == NULL)
-	{
-	failed:
-	  new_category->private.ctype = &__wcsmbs_gconv_fcts_c;
-	  __libc_lock_unlock (__libc_setlocale_lock);
-	  return;
-	}
+	goto failed;
 
       /* Get name of charset of the locale.  */
       charset_name = new_category->values[_NL_ITEM_INDEX(CODESET)].string;
@@ -203,11 +198,15 @@ __wcsmbs_load_conv (struct locale_data *new_category)
 	    __gconv_close_transform (new_fcts->towc, new_fcts->towc_nsteps);
 
 	  free (new_fcts);
-	  goto failed;
-	}
 
-      new_category->private.ctype = new_fcts;
-      new_category->private.cleanup = &_nl_cleanup_ctype;
+	failed:
+	  new_category->private.ctype = &__wcsmbs_gconv_fcts_c;
+	}
+      else
+	{
+	  new_category->private.ctype = new_fcts;
+	  new_category->private.cleanup = &_nl_cleanup_ctype;
+	}
     }
 
   __libc_lock_unlock (__libc_setlocale_lock);