On 10/22/15 1:42 AM, Michael Paquier wrote:
> I am not sure that I am not getting completely your point, why would
> it be a win to remove this safety check? We surely do not want to look
> for the common ancestor timeline if the target and source nodes have
> the same timeline, so we should not remove this check and just set
> rewind_needed to false to fallback to the same exit(0) for all those
> code paths. Per se the attached for example.
After playing with this a bit, I think your patch is correct. The code
has drifted a bit in the meantime, so attached is an updated patch.
Your patch added variable initializations for divergerec and
lastcommontli. Was that to avoid compiler warnings about uninitialized
variables? I didn't get these here. If that's the issue, maybe these
initializations should be moved to the if (same timeline) branch, to get
it a bit closer to the action.
I also added a test for this case. (It would currently fail.)