diff --git a/lib/psych/visitors/yaml_tree.rb b/lib/psych/visitors/yaml_tree.rb index b6c86f4c..0fb2714a 100644 --- a/lib/psych/visitors/yaml_tree.rb +++ b/lib/psych/visitors/yaml_tree.rb @@ -607,7 +607,8 @@ def accept target raise BadAlias, "Tried to dump an aliased object" end - unless Symbol === target || @permitted_classes[target.class] + unless Symbol === target || @permitted_classes[target.class] || + @permitted_classes.keys.include?(target.class.name) raise DisallowedClass.new('dump', target.class.name || target.class.inspect) end