From e7e39dd8868bed091431fe7d9d87a9dd460e7169 Mon Sep 17 00:00:00 2001 From: evanweaver Date: Thu, 1 Nov 2007 06:14:56 +0000 Subject: oops... gems is quite necessary git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@865 19e92222-5c0b-0410-8929-a290d50e31e9 --- lib/mongrel.rb | 2 +- lib/mongrel/gems.rb | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 lib/mongrel/gems.rb (limited to 'lib') diff --git a/lib/mongrel.rb b/lib/mongrel.rb index c5d41fa..e0dcab1 100644 --- a/lib/mongrel.rb +++ b/lib/mongrel.rb @@ -348,4 +348,4 @@ end # in regular Mongrel. $LOAD_PATH.unshift 'projects/mongrel_experimental/lib/' -Mongrel::Gems.require 'mongrel_experimental', '=1.1' +Mongrel::Gems.require 'mongrel_experimental', ">=#{Mongrel::Const::MONGREL_VERSION}" diff --git a/lib/mongrel/gems.rb b/lib/mongrel/gems.rb new file mode 100644 index 0000000..4b34552 --- /dev/null +++ b/lib/mongrel/gems.rb @@ -0,0 +1,23 @@ +module Mongrel + module Gems + class << self + + alias :original_require :require + + def require(library, version = nil) + begin + original_require library + rescue LoadError, RuntimeError => e + unless respond_to? 'gem' + # ActiveSupport breaks 'require' by making it always return a true value + require 'rubygems' + gem library, version if version + retry + end + # Fail without reraising + end + end + + end + end +end \ No newline at end of file -- cgit v1.2.3-24-ge0c7