[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [46027] trunk/blender/source/blender/ editors/interface/interface_widgets.c: Fix: #31095: Incorrect clamping of labels for multibyte languages

Sergey Sharybin sergey.vfx at gmail.com
Sat Apr 28 11:21:16 CEST 2012


Revision: 46027
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46027
Author:   nazgul
Date:     2012-04-28 09:21:16 +0000 (Sat, 28 Apr 2012)
Log Message:
-----------
Fix: #31095: Incorrect clamping of labels for multibyte languages

Modified Paths:
--------------
    trunk/blender/source/blender/editors/interface/interface_widgets.c

Modified: trunk/blender/source/blender/editors/interface/interface_widgets.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_widgets.c	2012-04-28 09:10:20 UTC (rev 46026)
+++ trunk/blender/source/blender/editors/interface/interface_widgets.c	2012-04-28 09:21:16 UTC (rev 46027)
@@ -1047,9 +1047,8 @@
 		
 		/* chop off the leading text, starting from the right */
 		while (but->strwidth > okwidth && cp2 > but->drawstr) {
-			int bytes = BLI_str_utf8_size(cp2);
-			if (bytes < 0)
-				bytes = 1;
+			char *prev_utf8 = BLI_str_find_prev_char_utf8(but->drawstr, cp2);
+			int bytes = cp2 - prev_utf8;
 
 			/* shift the text after and including cp2 back by 1 char, +1 to include null terminator */
 			memmove(cp2 - bytes, cp2, strlen(cp2) + 1);




More information about the Bf-blender-cvs mailing list