diff --git a/lib/ostruct.rb b/lib/ostruct.rb index f51eb7b5db..35047f1cff 100644 --- a/lib/ostruct.rb +++ b/lib/ostruct.rb @@ -174,9 +174,8 @@ class OpenStruct protected :new_ostruct_member def method_missing(mid, *args) # :nodoc: - mname = mid.id2name len = args.length - if mname.chomp!('=') + if mname = mid[/.*(?==\z)/m] if len != 1 raise ArgumentError, "wrong number of arguments (#{len} for 1)", caller(1) end