Used Yield instead of block.call
Merge pull request #12889 from kuldeepaggarwal/speed_ups

Used Yield instead of block.call