diff options
author | dgp <dgp@users.sourceforge.net> | 2012-09-15 13:34:07 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2012-09-15 13:34:07 (GMT) |
commit | b41e7be57014d7d8f36d1f7acd6ad7a125320463 (patch) | |
tree | cf085a77e82af41e8df7c230ad74c13dd843344a | |
parent | 9e569eae6b6493fcb7c4481dd266f21bd350e8ef (diff) | |
download | tk-b41e7be57014d7d8f36d1f7acd6ad7a125320463.zip tk-b41e7be57014d7d8f36d1f7acd6ad7a125320463.tar.gz tk-b41e7be57014d7d8f36d1f7acd6ad7a125320463.tar.bz2 |
3567778 Make Tk_MeasureChars() honor the TK_AT_LEAST_ONE flag properly.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | changes | 4 | ||||
-rw-r--r-- | macosx/tkMacOSXFont.c | 3 |
3 files changed, 10 insertions, 2 deletions
@@ -1,3 +1,8 @@ +2012-09-15 Don Porter <dgp@users.sourceforge.net> + + * macosx/tkMacOSXFont.c: [Bug 3567778] Make Tk_MeasureChars() honor + the TK_AT_LEAST_ONE flag properly. + 2012-09-13 Donal K. Fellows <dkf@users.sf.net> * generic/ttk/ttkEntry.c (EntryDisplay): [Bug 3567453]: Clip regions @@ -7006,6 +7006,8 @@ and -to (porter) 2012-08-25 (bug fix)[3554026,3561016] crash with tearoff menus (gavilan) +2012-09-15 (bug fix)[3567778] stop hang in wrapped label (porter) + Many revisions to better support a Cygwin environment (nijtmans) ---- Released 8.6b3, September 7, 2012 --- See ChangeLog for details --- +--- Released 8.6b3, September 18, 2012 --- See ChangeLog for details --- diff --git a/macosx/tkMacOSXFont.c b/macosx/tkMacOSXFont.c index e4e4e03..d800ae5 100644 --- a/macosx/tkMacOSXFont.c +++ b/macosx/tkMacOSXFont.c @@ -883,7 +883,8 @@ TkpMeasureCharsInContext( /* The call to CTTypesetterSuggestClusterBreak above will always return at least one character regardless of whether it exceeded it or not. Clean that up now. */ - while (width > maxWidth && !(flags & TK_PARTIAL_OK) && index > start) { + while (width > maxWidth && !(flags & TK_PARTIAL_OK) + && index > start+(flags & TK_AT_LEAST_ONE)) { range.length = --index; line = CTTypesetterCreateLine(typesetter, range); width = CTLineGetTypographicBounds(line, NULL, NULL, NULL); |