diff options
-rw-r--r-- | Guardfile | 2 | ||||
-rw-r--r-- | lib/hashie/extensions/indifferent_access.rb | 4 | ||||
-rw-r--r-- | lib/hashie/extensions/merge_initializer.rb | 2 |
3 files changed, 4 insertions, 4 deletions
@@ -1,5 +1,5 @@ guard 'rspec' do watch(%r{^spec/.+_spec\.rb}) - watch(%r{^lib/(.+)\.rb}) { |m| "spec/lib/#{m[1]}_spec.rb" } + watch(%r{^lib/(.+)\.rb}) { |m| "spec/#{m[1]}_spec.rb" } watch('spec/spec_helper.rb') { "spec" } end diff --git a/lib/hashie/extensions/indifferent_access.rb b/lib/hashie/extensions/indifferent_access.rb index 50d4081..d4c0238 100644 --- a/lib/hashie/extensions/indifferent_access.rb +++ b/lib/hashie/extensions/indifferent_access.rb @@ -38,7 +38,7 @@ module Hashie # a hash without modifying the actual class. This is what # allows IndifferentAccess to spread to sub-hashes. def self.inject!(hash) - hash.singleton_class.send :include, Hashie::Extensions::IndifferentAccess + (class << hash; self; end).send :include, Hashie::Extensions::IndifferentAccess hash.convert! end @@ -103,7 +103,7 @@ module Hashie def hash_with_indifference?(other) other.is_a?(::Hash) && other.respond_to?(:indifferent_access?) && - other.indifference_access? + other.indifferent_access? end end end diff --git a/lib/hashie/extensions/merge_initializer.rb b/lib/hashie/extensions/merge_initializer.rb index 9b12bef..f9ccc2e 100644 --- a/lib/hashie/extensions/merge_initializer.rb +++ b/lib/hashie/extensions/merge_initializer.rb @@ -16,7 +16,7 @@ module Hashie # module MergeInitializer def initialize(hash = {}, default = nil, &block) - super(default, &block) + default ? super(default) : super(&block) update(hash) end end |