From f5fb445b6d83d74f7809062d7965ce75b6efda97 Mon Sep 17 00:00:00 2001 From: ser Date: Fri, 2 Apr 2004 03:26:19 +0000 Subject: REXML changes backported from the 1.9 branch: * Minor source documentation changes * Changes to the pretty-printing code, including the addition of the word- wrap submission. * Bug fix for missing quotations in NOTATION DTD items * Bug fixes and improvements to whitespace handling in text nodes * Refactoring and bug fixes in encoding support * Minor speed optimizations in the core parser * Bug fixes in the SAX2 parserthe core parser * Copyright fixes * Version bump to REXML 3.0.0 * A change that caused speed degredation has been reversed * Addition of a value=() method in Text, for replacing the contents of a text node * Fixed the document order of the descendant-or-self axis in XPath git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@6071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rexml/source.rb | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'lib/rexml/source.rb') diff --git a/lib/rexml/source.rb b/lib/rexml/source.rb index 2110e6db6..a524e483e 100644 --- a/lib/rexml/source.rb +++ b/lib/rexml/source.rb @@ -31,7 +31,6 @@ module REXML def initialize(arg) @orig = @buffer = arg self.encoding = check_encoding( @buffer ) - #@buffer = decode(@buffer) unless @encoding == UTF_8 @line = 0 end @@ -96,7 +95,7 @@ module REXML # @return true if the Source is exhausted def empty? - @buffer.nil? + @buffer == "" end # @return the current line in the source @@ -113,17 +112,14 @@ module REXML class IOSource < Source #attr_reader :block_size + # block_size has been deprecated def initialize(arg, block_size=500) @er_source = @source = arg @to_utf = false - # READLINE OPT - # The following was commented out when IOSource started using readline - # to pull the data from the stream. - #@block_size = block_size - #super @source.read(@block_size) - @line_break = '>' - #super @source.readline( "\n" ) - super @source.readline( @line_break )+@source.read + # FIXME + # This is broken. If the user puts in enough carriage returns, this can fail + # to calculate the correct encoding. + super @source.read( 100 ) @line_break = encode( '>' ) end -- cgit