lib/avromatic/io/datum_reader.rb in avromatic-2.2.0 vs lib/avromatic/io/datum_reader.rb in avromatic-2.2.1

- old
+ new

@@ -8,11 +8,11 @@ # branch 'salsify-master' with the tag 'v1.9.0.3' class DatumReader < Avro::IO::DatumReader UNION_MEMBER_INDEX = Avromatic::IO::UNION_MEMBER_INDEX - def read_data(writers_schema, readers_schema, decoder, initial_record = {}) + def read_data(writers_schema, readers_schema, decoder, initial_record = nil) # schema matching unless self.class.match_schemas(writers_schema, readers_schema) raise Avro::IO::SchemaMatchException.new(writers_schema, readers_schema) end @@ -50,10 +50,10 @@ when :fixed; read_fixed(writers_schema, readers_schema, decoder) when :enum; read_enum(writers_schema, readers_schema, decoder) when :array; read_array(writers_schema, readers_schema, decoder) when :map; read_map(writers_schema, readers_schema, decoder) when :union; read_union(writers_schema, readers_schema, decoder) - when :record, :error, :request; read_record(writers_schema, readers_schema, decoder, initial_record) + when :record, :error, :request; read_record(writers_schema, readers_schema, decoder, initial_record || {}) else raise Avro::AvroError.new("Cannot read unknown schema type: #{writers_schema.type}") end # Allow this code to be used with an official Avro release or the