Community
Participate
Working Groups
When reading a file with an open <head> but no closing </head>, org.eclipse.jface.internal.text.html.HTML2TextReader.read hangs. Here is a simple main class that reproduces the problem: public static void main(String[] args) { StringReader reader = new StringReader("<head>"); char[] cb = new char[20]; try { new org.eclipse.jface.internal.text.html.HTML2TextReader(reader, null).read(cb); } catch (IOException e) { e.printStackTrace(); } System.out.println(cb); } The program goes into an infinite loop. Change "<head>" to "<head></head>" and the program terminates as expected. I originally noticed the problem on org.eclipse.wst.sse.ui.internal.derived.HTML2TextReader.HTML2TextReader, but that class is a copy of the jface class of the same name. The problem appears in both classes. Seems like once an open <head> is found, there needs to be a lookahead performed to see if a close tag exists.
Fixed in master: 60f31587f7b264eca3911ae21d595b0d2e35a568