pythonicrubyist / creek

Ruby library for parsing large Excel files.
http://rubygems.org/gems/creek
MIT License
386 stars 109 forks source link

Reset headers each time when creating the enumerator #98

Closed ppostma closed 3 years ago

ppostma commented 3 years ago

When with_headers: true is used and #simple_rows is called multiple times, the headers/values get messed up. This PR fixes it by resetting the headers when creating the enumerator.

Before:

sheet.simple_rows.to_a[1]
=> {"HeaderA"=>"value1", "HeaderB"=>"value2", "HeaderC"=>"value3"}
sheet.simple_rows.to_a[1]
=> {nil=>"value3"}

After:

sheet.simple_rows.to_a[1]
=> {"HeaderA"=>"value1", "HeaderB"=>"value2", "HeaderC"=>"value3"}
sheet.simple_rows.to_a[1]
=> {"HeaderA"=>"value1", "HeaderB"=>"value2", "HeaderC"=>"value3"}