Clicking undo from a page showing the diff for non-consecutive revisions should
attempt to undo the cumulative effect of all of the intervening edits, not
merely the final edit.
For example, consider an article with four consecutive revisions, r1,r2,r3,r4.
If I view the diff page for diff(r2,r3) I can currently hit undo to try to patch
r4 with diff(r3,r2). This is good.
However, if I view diff(r1,r3) and hit undo, r4 is still just patched with
diff(r3,r2); that is, only one edit is undone. I think that r4 should be patched
with diff(r3,r1) to undo the cumulative effect of both edits between r1 and r3.
This would be useful if, for example, both of these edits are vandalism.
The current behaviour is also confusing, as the effect of hitting undo does not
correspond with what is displayed on the diff page diff(r1,r3).