Merge request does not show the correct changes when a collapsed diff is expanded
Summary
The issue is in the Merge Request "Changes" tab when viewing changes between some version and another version that is not the target branch. If a large the diff is collapsed, clicking the "Click to expand it" link does not display the correct diff. Instead of displaying the diff against the selected versions, it displays the diff against the target branch.
Steps to reproduce
Push a change to an existing merge request that is large and causes the file to be shown as collapsed in the "Changes" tab. Then, in the "Changes between" drop-down boxes, select "latest version" in the first box, and whatever the prior version was in the second drop down box. You should see the large change that you just pushed as collapsed, with a "Click to expand" link shown to expand it. Click that link, and you will see that the diff shown is not the change that you just pushed. Instead, it includes changes all the way back to the target branch.
Example Project
What is the current bug behavior?
In the link above, you'll see:
I've highlighted the count of lines changed. Notice that the total count for the selected "Changes between" versions matches the count for the file, which is correct because its the only file in the merge request. Click the "Click to expand link", and you'll see:
Notice that the total count for the selected "Changes between" versions is less than the count for the file. Also notice that diff shown for the file is not the diff between the selected "Changes between" versions. It is the diff between the latest version and the master branch.
What is the expected correct behavior?
After clicking the "Click to expand link", I expect to see a diff of the change between the selected "Changes between" versions. This is the behavior seen when the diff is small enough to not be collapsed.
Relevant logs and/or screenshots
Please see the merge request and the screenshots included above.
Output of checks
This bug happens on GitLab.com