diff options
| author | Markus Roberts <Markus@reality.com> | 2010-03-30 14:34:01 -0700 |
|---|---|---|
| committer | James Turnbull <james@lovedthanlost.net> | 2010-03-31 12:24:50 +1100 |
| commit | ae0b0bf23e418e8c6665e9dc135148b78bdbd913 (patch) | |
| tree | b59ae9c07ee4132280daf990585f9807046e11ff /lib/puppet | |
| parent | 9db066b1322620bdd45acde9f36069be56ee3931 (diff) | |
Fix for #3101 (bug in MRI 1.8.7)
Due to a bug in Ruby 1.8.7 net/http will attempt to close a connection
that wasn't successfully opened (it's nil), first checking to see if the
connection is already close, and thus raising a method missing exception.
This bug causes error messages that are confusing / misleading.
To get around this, we add a closed? method to nil such that a nil (unopened)
connection is always considered closed, allowing the real problem to be
reported.
Diffstat (limited to 'lib/puppet')
| -rw-r--r-- | lib/puppet/util/monkey_patches.rb | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/puppet/util/monkey_patches.rb b/lib/puppet/util/monkey_patches.rb index c93d6ffb9..459fd7425 100644 --- a/lib/puppet/util/monkey_patches.rb +++ b/lib/puppet/util/monkey_patches.rb @@ -31,5 +31,16 @@ def YAML.dump(*args) ZAML.dump(*args) end - +# +# Workaround for bug in MRI 1.8.7, see +# http://redmine.ruby-lang.org/issues/show/2708 +# for details +# +if RUBY_VERSION == '1.8.7' + class NilClass + def closed? + true + end + end +end |
