diff --git a/doc/ver.xml b/doc/ver.xml
index 5cd7854..942a798 100644
--- a/doc/ver.xml
+++ b/doc/ver.xml
@@ -7,6 +7,9 @@
- Sequence diagrams provide an option to specify whether objects are
underlined or not.
+- Documentation generated with UMLGraph will process correctly
+non-ASCII characters.
+(Fix contributed by Gunho Kim.)
diff --git a/src/org/umlgraph/doclet/UmlGraphDoc.java b/src/org/umlgraph/doclet/UmlGraphDoc.java
index b7283bf..7446e71 100644
--- a/src/org/umlgraph/doclet/UmlGraphDoc.java
+++ b/src/org/umlgraph/doclet/UmlGraphDoc.java
@@ -4,8 +4,10 @@ import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
-import java.io.FileWriter;
import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.io.FileOutputStream;
+import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.Set;
@@ -196,9 +198,10 @@ public class UmlGraphDoc {
BufferedReader reader = null;
boolean matched = false;
try {
- int BUFSIZE = (int) Math.pow(2, 20); // more or less one megabyte
- writer = new BufferedWriter(new FileWriter(alteredFile), BUFSIZE);
- reader = new BufferedReader(new FileReader(htmlFile));
+ writer = new BufferedWriter(new OutputStreamWriter(new
+ FileOutputStream(alteredFile), opt.outputEncoding));
+ reader = new BufferedReader(new InputStreamReader(new
+ FileInputStream(htmlFile), opt.outputEncoding));
String line;
while ((line = reader.readLine()) != null) {
diff --git a/web/build.sh b/web/build.sh
index e3e5d92..356425f 100755
--- a/web/build.sh
+++ b/web/build.sh
@@ -6,7 +6,7 @@
#
# For each file appearing in top.html
-for file in `awk -F\" '$4 == "menu"{print $6}' top.html`
+for file in `awk -F\" '$4 == "menu"{print $6}' top.html | tr -d '\r'`
do
base=`basename $file .html`
(