Permalink
Switch branches/tags
Commits on Jun 16, 2011
  1. version bump to 1.4.5. also updating changelog release date to reflec…

    flavorjones committed May 23, 2011
    …t my recent inability to concentrate.
  2. Updating Manifest.txt

    flavorjones committed Jun 16, 2011
  3. Revert "rake-compiler's tendency to chdir means we should use expand_…

    flavorjones committed Jun 16, 2011
    …path when adding files to the gem."
    
    This reverts commit a330f14.
Commits on Jun 4, 2011
  1. rake-compiler's tendency to chdir means we should use expand_path whe…

    flavorjones committed Jun 4, 2011
    …n adding files to the gem.
  2. hoe's gemtest obsession and rake-compiler's chdir tendencies don't ag…

    flavorjones committed Jun 4, 2011
    …ree, so I'm just going to give up and add `.gemtest` to the repo.
  3. If anyone actually uses rip, please to explain.

    flavorjones committed Jun 4, 2011
    Conflicts:
    
    	Manifest.txt
Commits on Jun 3, 2011
Commits on May 24, 2011
Commits on May 21, 2011
  1. FFI port of cf062cb

    flavorjones committed May 21, 2011
Commits on May 20, 2011
Commits on May 19, 2011
  1. FFI port of a0905d3 for #452.

    flavorjones committed May 19, 2011
  2. getting ready for release

    flavorjones committed May 19, 2011
  3. If the node doesn't have a document (e.g., Reader), then don't bother…

    flavorjones committed Apr 21, 2011
    … registering a gc mark function. Partly fixes #439.
Commits on May 18, 2011
  1. changelog for #406

    flavorjones committed May 18, 2011
  2. Nokogiri::XML::Schema#validate throws error if not given a

    nathanl committed with flavorjones May 18, 2011
    Nokogiri::XML::Document or the path of an existing file.
    
    Previously, passing in any other string would fail silently. For example, if
    rendered XML was passed in as a string, it would simply return an empty
    list of errors. Now an ArgumentError will be thrown.
Commits on May 4, 2011
Commits on Apr 6, 2011
Commits on Mar 9, 2011
  1. extracted sets of Node::SaveOptions into Node::SaveOptions::DEFAULT_{…

    flavorjones committed Mar 9, 2011
    …X,H,XH}TML
    
    Conflicts:
    
    	CHANGELOG.rdoc
Commits on Mar 4, 2011
Commits on Feb 27, 2011
  1. Prevent buffer overflow in xml_io.c when io return string is too long

    ender672 committed with flavorjones Feb 7, 2011
    If an IO object returns a string that is longer than expected, io_read_callback() writes past the limit of the buffer and crashes the interpreter. This patch checks against the size of our buffer before copying the data over.
    
    I can't really think of a case where an IO object would do something this silly, but seems like a good practice anyways.
  2. Fix Memory Leak in xml_io.c

    ender672 committed with flavorjones Feb 4, 2011
    This example will use up all system memory:
    
      require 'nokogiri'
    
      class BadIO
        def read(*args)
          raise 'hell'
        end
      end
    
      100000000.times do
        Nokogiri::XML.parse(BadIO.new) rescue nil
      end
    
    The example above is obscure, but imagine an HTTP object raising TimeoutError. Nokogiri leaks memory every time this happens.
    
    I became suspicious of this when looking at ext/nokogiri/xml_io.c. io_read_callback() is invoked in the middle of some libxml operation, which may not behave well when a ruby exception is thrown and it gets interrupted. It seems that the safe way to handle this is to wrap the method call in rb_rescue.
    
    Note that the same applies to io_write_callback() in xml_io.c. Although I did not notice a memory leak with io_write_callback(), wrapping with rb_rescue() seems like the correct thing to do in both cases.
    
    A side effect of this fix is that IO errors will be silently discarded.
Commits on Feb 24, 2011
  1. Allow for node.search("..") to be executed as XPath

    hcatlin committed with flavorjones Feb 24, 2011
    instead of being converted to CSS. This seems like a reasonable
    bit of XPath and our users have tried it many, many times.
    
    Might want to consider search(".") as XPath instead of CSS
    also. However, this was left out.
Commits on Jan 26, 2011
  1. "then" should be "the"

    gpherguson committed with tenderlove Dec 16, 2010
Commits on Jan 25, 2011
  1. FFI port of 45e6694 (rel. #356)

    flavorjones committed Jan 20, 2011
  2. FFI port of 8c2a112 for #396

    flavorjones committed Jan 20, 2011