Old merge requests can have diffs without corresponding blobs. (This also may be possible for commit diffs in corrupt repositories.) We can't use the `&.` operator on the blobs, because the blob objects are never nil, but `BatchLoader` instances that delegate to `Blob`. We can't use `Object#try`, because `Blob` doesn't inherit from `Object`. `BatchLoader` provides a `__sync` method that returns the delegated object, but using `itself` also works because it's forwarded, and will work for non-`BatchLoader` instances too. So the simplest solution is to just use that with the `&.` operator. |
||
|---|---|---|
| .. | ||
| file_collection | ||
| formatters | ||
| diff_refs_spec.rb | ||
| file_spec.rb | ||
| highlight_spec.rb | ||
| inline_diff_markdown_marker_spec.rb | ||
| inline_diff_marker_spec.rb | ||
| inline_diff_spec.rb | ||
| line_mapper_spec.rb | ||
| parallel_diff_spec.rb | ||
| parser_spec.rb | ||
| position_spec.rb | ||
| position_tracer_spec.rb | ||