# HG changeset patch # User kazz # Date 1295640094 -32400 # Node ID 4c2ddaa9b998b74e56409ac3e15a24031397bb37 # Parent 5a50d4b48bf964c83fad14402c1c43728ff1a4bb connection safe? diff -r 5a50d4b48bf9 -r 4c2ddaa9b998 src/IOHandler.java --- a/src/IOHandler.java Wed Jan 19 00:16:26 2011 +0900 +++ b/src/IOHandler.java Sat Jan 22 05:01:34 2011 +0900 @@ -23,8 +23,8 @@ try { int num; if ((num = sChannel.read(buffer)) > 0) { - String str = new String(buffer.array()); - Pattern pat = Pattern.compile("((([^\n\r]+): ([^\n\r]+))|(^GET ([/A-Za-z]+) HTTP/1.1))"); + String str = new String(buffer.array(), 0, num - 8); + Pattern pat = Pattern.compile("((([^\n\r:]+): ([^\n\r]+))|(^GET ([^ \n\r]+) HTTP/1.1))"); Matcher mat = pat.matcher(str); while (mat.find()) { if (mat.group(6) != null) { @@ -98,7 +98,7 @@ private int generateResponseCodeValue(String str) { char[] ch = str.toCharArray(); - int val = 0; + long val = 0; int spNum = 0; for (char c : ch) { if (c == ' ') { @@ -108,6 +108,6 @@ val += c - '0'; } } - return val / spNum; + return (int) (val / spNum); } }