about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--iconv/gconv_open.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/iconv/gconv_open.c b/iconv/gconv_open.c
index 842bf73566..a84ed2fb9e 100644
--- a/iconv/gconv_open.c
+++ b/iconv/gconv_open.c
@@ -223,7 +223,10 @@ __gconv_open (const char *toset, const char *fromset, __gconv_t *handle,
 			  newp = (struct __gconv_trans_data *)
 			    malloc (sizeof (struct __gconv_trans_data));
 			  if (newp == NULL)
-			    goto bail;
+			    {
+			      res = __GCONV_NOMEM;
+			      goto bail;
+			    }
 
 			  newp->__trans_fct = runp->trans_fct;
 			  newp->__trans_context_fct = runp->trans_context_fct;
@@ -251,7 +254,10 @@ __gconv_open (const char *toset, const char *fromset, __gconv_t *handle,
 
 		  result->__data[cnt].__outbuf = (char *) malloc (size);
 		  if (result->__data[cnt].__outbuf == NULL)
-		    goto bail;
+		    {
+		      res = __GCONV_NOMEM;
+		      goto bail;
+		    }
 
 		  result->__data[cnt].__outbufend =
 		    result->__data[cnt].__outbuf + size;