Yeah you are right. I should not comment when I am about to go to sleep :) I started with 
```ruby
task.result_description.tap { |d| d.gsub! "\n", '<br/>' if d.is_a? String }
```
which was kind a nice but it was modifying the string in-place. Next iteration was
```ruby
task.result_description.dup.tap { |d| d.gsub! "\n", '<br/>' if d.is_a? String }
```
but I was not sure what is it duplicating when it is not a string. So I've added return
```ruby
task.result_description.tap { |d| return d.gsub "\n", '<br/>' if d.is_a? String }
```
and I was happy that I've found a oneliner not realizing I made it worse :). Your suggestion is much better.