|
From: <caw...@us...> - 2007-01-22 19:09:17
|
Revision: 1840
http://svn.sourceforge.net/rubyeclipse/?rev=1840&view=rev
Author: cawilliams
Date: 2007-01-22 11:09:06 -0800 (Mon, 22 Jan 2007)
Log Message:
-----------
Close Ticket #89 - with new JRuby we seem to handle UTF8 fine, just need to make sure all calls to parser take charset into account
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/RubyCodeAnalyzer.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/RubyCodeAnalyzer.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/RubyCodeAnalyzer.java 2007-01-22 19:08:10 UTC (rev 1839)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/RubyCodeAnalyzer.java 2007-01-22 19:09:06 UTC (rev 1840)
@@ -15,7 +15,7 @@
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
-import java.io.StringReader;
+import java.io.UnsupportedEncodingException;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.CoreException;
@@ -42,17 +42,24 @@
}
public void compileFile(IFile file) throws CoreException {
- Reader reader = new InputStreamReader(file.getContents());
+ Reader reader = null;
+ try {
+ reader = new InputStreamReader(file.getContents(), file.getCharset());
+ } catch (UnsupportedEncodingException e1) {
+ RubyCore.log(e1);
+ return;
+ }
String contents = readContents(reader);
markerManager.removeProblemsAndTasksFor(file);
try {
- Node rootNode = parser.parse(file, new StringReader(contents));
+ Node rootNode = parser.parse(file, reader);
if (rootNode == null) return;
RubyLintVisitor visitor = new RubyLintVisitor(contents, new ProblemRequestorMarkerManager(file, markerManager));
rootNode.accept(visitor);
indexUpdater.update(file, rootNode, true);
} catch (SyntaxException e) {
- markerManager.createSyntaxError(file, e);
+ // Should we really put a marker here? I think the normal parsing process will create syntax markers just fine
+ //markerManager.createSyntaxError(file, e);
} finally {
IoUtils.closeQuietly(reader);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|