(svn r14518) -Fix (r14514): forgot win32 and OS/2 files (glx)
authorsmatz
Wed, 22 Oct 2008 20:23:50 +0000
changeset 10280 9897206074cc
parent 10279 cf4b14e20c44
child 10281 6f45e8b392d1
(svn r14518) -Fix (r14514): forgot win32 and OS/2 files (glx)
src/os2.cpp
src/win32.cpp
--- a/src/os2.cpp	Wed Oct 22 20:22:18 2008 +0000
+++ b/src/os2.cpp	Wed Oct 22 20:23:50 2008 +0000
@@ -196,7 +196,7 @@
 			{
 				uint w;
 
-				if (tb->length + length >= tb->maxlength - 1) break;
+				if (tb->size + length + 1 > tb->maxsize) break;
 
 				w = GetCharacterWidth(FS_NORMAL, (byte)*i);
 				if (tb->maxwidth != 0 && width + tb->width + w > tb->maxwidth) break;
@@ -205,11 +205,11 @@
 				length++;
 			}
 
-			memmove(tb->buf + tb->caretpos + length, tb->buf + tb->caretpos, tb->length - tb->caretpos + 1);
+			memmove(tb->buf + tb->caretpos + length, tb->buf + tb->caretpos, tb->size - tb->caretpos);
 			memcpy(tb->buf + tb->caretpos, text, length);
 			tb->width += width;
 			tb->caretxoffs += width;
-			tb->length += length;
+			tb->size += length;
 			tb->caretpos += length;
 
 			WinCloseClipbrd(hab);
--- a/src/win32.cpp	Wed Oct 22 20:22:18 2008 +0000
+++ b/src/win32.cpp	Wed Oct 22 20:23:50 2008 +0000
@@ -1138,7 +1138,7 @@
 		if (!IsPrintable(c)) break;
 
 		byte len = Utf8CharLen(c);
-		if (tb->length + length >= tb->maxlength - len) break;
+		if (tb->size + length + len > tb->maxsize) break;
 
 		byte charwidth = GetCharacterWidth(FS_NORMAL, c);
 		if (tb->maxwidth != 0 && width + tb->width + charwidth > tb->maxwidth) break;
@@ -1149,15 +1149,15 @@
 
 	if (length == 0) return false;
 
-	memmove(tb->buf + tb->caretpos + length, tb->buf + tb->caretpos, tb->length - tb->caretpos);
+	memmove(tb->buf + tb->caretpos + length, tb->buf + tb->caretpos, tb->size - tb->caretpos);
 	memcpy(tb->buf + tb->caretpos, utf8_buf, length);
 	tb->width += width;
 	tb->caretxoffs += width;
 
-	tb->length += length;
+	tb->size += length;
 	tb->caretpos += length;
-	assert(tb->length < tb->maxlength);
-	tb->buf[tb->length] = '\0'; // terminating zero
+	assert(tb->size <= tb->maxsize);
+	tb->buf[tb->size - 1] = '\0'; // terminating zero
 
 	return true;
 }