Sha256: 67e875f85ce6d5c517c820101dfdf22230f45cb15f6d5efc7f74fc5554c2743c
Contents?: true
Size: 606 Bytes
Versions: 51
Compression:
Stored size: 606 Bytes
Contents
module ActiveSupport module MarshalWithAutoloading # :nodoc: def load(source, proc = nil) super(source, proc) rescue ArgumentError, NameError => exc if exc.message.match(%r|undefined class/module (.+?)(?:::)?\z|) # try loading the class/module loaded = $1.constantize raise unless $1 == loaded.name # if it is an IO we need to go back to read the object source.rewind if source.respond_to?(:rewind) retry else raise exc end end end end Marshal.singleton_class.prepend(ActiveSupport::MarshalWithAutoloading)
Version data entries
51 entries across 49 versions & 6 rubygems