[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#272136: More progress about the "Arabic crash" in Debian Installer



On Mon, Sep 20, 2004 at 10:22:14AM +0200, Bastian Blank wrote:
> On Mon, Sep 20, 2004 at 12:49:57AM -0700, Steve Langasek wrote:
> > Please try the attached patch to slang.
> I did some cleanups on the patch.

Some further changes.

Bastian

-- 
One does not thank logic.
		-- Sarek, "Journey to Babel", stardate 3842.4
diff -ur slang-1.4.9.orig/src/slsmg.c slang-1.4.9-utf8/src/slsmg.c
--- slang-1.4.9.orig/src/slsmg.c	2004-09-20 09:17:58.000000000 +0200
+++ slang-1.4.9-utf8/src/slsmg.c	2004-09-20 10:53:52.000000000 +0200
@@ -309,7 +309,8 @@
    if ((int) n < 0)
      return;
 
-   wptr = (wchar_t *)malloc(sizeof(wchar_t)*(n+1));
+   size_t wptr_len = n + 1;
+   wptr = malloc(sizeof(wchar_t) * wptr_len);
 
    if (str != NULL && wptr != NULL)
    {
@@ -328,6 +329,14 @@
 	     str += k;
 	     n -= w;
 	     i++;
+	     /* We have some null-width chars in the string and need more space */
+	     if (i >= wptr_len) {
+		wchar_t *new_wptr = realloc(wptr, sizeof(wchar_t) * wptr_len * 2);
+		if (!new_wptr)
+		  break;
+		wptr_len *= 2;
+		wptr = new_wptr;
+	     }
 	}
 	SLsmg_write_nwchars (wptr, i);
    }

Attachment: signature.asc
Description: Digital signature


Reply to: