Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
  • 47 commits
  • 34 files changed
  • 0 comments
  • 7 contributors
Jan 21, 2011
Akinori MUSHA knu Use better, realistic approach for detecting the end of <head> part i…
…n encoding detection.

Since </head> and <body> are easily forged by libxml2's HTML parser,
we cannot reliably use those events to see when <head> part actually
ends.
16edbfb
Akinori MUSHA knu Translate. 8e4521b
Akinori MUSHA knu Reword. ff24d5e
Jan 24, 2011
Aaron Patterson tenderlove add `check_extra_deps` as a prerequisite to `test`. Deveopment depend…
…encies will be installed automatically if they do not exist
09a44fe
Aaron Patterson tenderlove check_deps ensures that these gems are installed 3985cdf
Mike Dalessio flavorjones FFI port of 8c2a112 for #396 1a20d89
Mike Dalessio flavorjones FFI port of 45e6694 (rel. #356) 1a7571b
Jan 26, 2011
G. Ferguson gpherguson Minor spell check "your" should have been "you" 801a1d4
G. Ferguson gpherguson "then" should be "the" 4ae6306
Feb 24, 2011
Hampton Catlin hcatlin Allow for node.search("..") to be executed as XPath
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.
7a59efc
Feb 27, 2011
Timothy Elliott ender672 Fix Memory Leak in xml_io.c
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.
f0788ba
Timothy Elliott ender672 Prevent buffer overflow in xml_io.c when io return string is too long
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.
079d577
Mar 04, 2011
Mike Dalessio flavorjones additional parser options (nod to @jenshimmelreich) e88eb51
Mar 09, 2011
Mike Dalessio flavorjones extracted sets of Node::SaveOptions into Node::SaveOptions::DEFAULT_{…
…X,H,XH}TML

Conflicts:

	CHANGELOG.rdoc
5bbed7e
Apr 06, 2011
Mike Dalessio flavorjones nokogiri version info contains the full RUBY_DESCRIPTION string. 402bad7
May 04, 2011
Mike Dalessio flavorjones XSLT::Stylesheet#transform no longer segfaults when handed a non-XML:…
…:Document. Closes #452
a0905d3
May 18, 2011
Nathan Long nathanl Nokogiri::XML::Schema#validate throws error if not given a
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.
215d2fa
Mike Dalessio flavorjones changelog for #406 71f7404
May 19, 2011
Mike Dalessio flavorjones remove an unnecessary Data_Wrap_Struct call. d4184e8
Mike Dalessio flavorjones If the node doesn't have a document (e.g., Reader), then don't bother…
… registering a gc mark function. Partly fixes #439.
7f86985
Aaron Patterson tenderlove just yield rather than calling the block 739e702
Aaron Patterson tenderlove * and flatten not needed since we do not support 1.8.6 8dcb2e0
Mike Dalessio flavorjones getting ready for release b74e896
Mike Dalessio flavorjones FFI port of a0905d3 for #452. d76926a
Mike Dalessio flavorjones switching off bad-IO-reader test under FFI 22c39a5
Mike Dalessio flavorjones working around failing test starting with ffi 1.0.4-ish. 90c8ce2
May 20, 2011
Mike Dalessio flavorjones fixing another failing test in later versions of FFI ffb931c
Mike Dalessio flavorjones FFI port of cf062cb 2ea8e37
May 24, 2011
Mike Dalessio flavorjones quashing warnings about parser formatting in ruby 1.9.x. Closes #463. f1e3133
Jun 03, 2011
Mike Dalessio flavorjones removing FIXMEs from tasks/cross_compile.rb 31e8205
Mike Dalessio flavorjones advise the developer to unset HOST when building cross-rubies. cdcce58
Jun 04, 2011
Mike Dalessio flavorjones If anyone actually uses rip, please to explain. 202b71e
Mike Dalessio flavorjones If anyone actually uses rip, please to explain.
Conflicts:

	Manifest.txt
ef6f91b
Mike Dalessio flavorjones hoe's gemtest obsession and rake-compiler's chdir tendencies don't ag…
…ree, so I'm just going to give up and add `.gemtest` to the repo.
7554c2b
Mike Dalessio flavorjones let's use our CROSS_DIR directory 85283f8
Mike Dalessio flavorjones rake-compiler's tendency to chdir means we should use expand_path whe…
…n adding files to the gem.
a330f14
Jun 15, 2011
Mike Dalessio flavorjones Revert "rake-compiler's tendency to chdir means we should use expand_…
…path when adding files to the gem."

This reverts commit a330f14.
7df1712
Mike Dalessio flavorjones double shot! build both windows gems in one fell swoop. f92d8b4
Jun 16, 2011
Mike Dalessio flavorjones Updating Manifest.txt c775181
Mike Dalessio flavorjones version bump to 1.4.5. also updating changelog release date to reflec…
…t my recent inability to concentrate.
cf0eef9
Jun 19, 2011
Mike Dalessio flavorjones OMG, 1.8.6 support. 1acac09
Mike Dalessio flavorjones Version bumped to 1.4.6, and new CHANGELOG entries. 8851846
Jun 30, 2011
Timothy Elliott ender672 Don't return the first chunk twice when parsing an HTML file with unk…
…nown encoding. Fixes issue #488.
2899fd1
Akinori MUSHA knu Update comments regarding the last fix. 1fe9308
Akinori MUSHA knu Add a test that fails without the last fix. 78182bd
Akinori MUSHA knu Update. c1fb331
Jul 01, 2011
Mike Dalessio flavorjones Release prep: bumping version to 1.4.7 and updating the changelogs. 66b46cf
Something went wrong with that request. Please try again.