Graphviz Issue Tracker
Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000905graphvizDotpublic2005-06-08 12:422011-05-24 16:43
ReporterKent.N 
Assigned Toerg 
PrioritynormalSeveritymajorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOS*-*-OS Version
Summary0000905: Memory exhaust with UTF-8 Japanese Katakana
Description


Using japanese katakana(U30A0-U30FF) characters causes memory exhaust in label_size() in dotneato/common/labels.c.
label_size() function has a workaround for Big5 charset and it makes some input characters skip when their codes are in range 0xA1-0xFE.
Unfortunately, japanese katakana characters are represented as byte sequence 0xE382A0-0xE383BF in UTF-8, some of their last byte in the range above.
So the workaround casts head position of input (variable p) over the null-terminator, then the while loop will go infinite.
This problem would happen in other than japanese katakana characters, but I haven't checked.
Additional Information
[erg] Bug 671
TagsNo tags attached.
AUXILLARY-FILES
DATE-FIXED
FIX-COMMENT 
The following patch works fine for me:

*** dotneato/common/labels.c Thu Jun 9 00:53:40 2005
--- dotneato/common/labels.c.new Thu Jun 9 00:53:31 2005
*************** static pointf label_size(char *str, text
*** 60 ****
--- 61 ----
+ size
FORMER-ID723
INPUT-FILEhttp://www.graphviz.org/bugs/test.dot [^]
OUTPUT-FILE
STATUS-COMMENTFixed
VERSION     2.2
Attached Files

- Relationships

-  Notes
There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2011-04-28 04:03 user1 New Issue
2011-04-28 04:03 user1 Assigned To => erg
2011-05-24 16:42 dperry INPUT-FILE test.dot (application/msword) * => test.dot
2011-05-24 16:42 dperry Description Updated View Revisions
2011-05-24 16:42 dperry Additional Information Updated View Revisions


MantisBT 1.2.5[^]
Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker