I (Julian Foad) wrote:

> I have only had a chance to skim through your reply so far.  I'm glad that 
> you find it to be an explicable and harmless difference.

OK, I follow your explanation and agree; thanks.  I have closed the isse #4217.

In investigating this, I tried your suggestion of doing the 
'remove_noop_subtree_ranges' after the 'fix_deleted_subtree_ranges'.  It 
triggered an assertion, one that I added recently, checking that the session 
URL was unchanged; this led me to find a bug I introduced (I think) whereby in 
several functions we reparent an RA session 'temporarily' but we don't take 
care to restore the original session URL if an error occurs.

On fixing that, I find that moving this code makes no difference to the editor 
drives made by this test.  I haven't looked further into eliminating the no-op 
drive.

I do wonder, though, if instead of trying to detect and eliminate revision 
ranges here that would cause an 'invalid editor drive' later, it might be 
simpler instead to change the 'do an editor drive' subtroutine to handle such 
cases (where the start and/or end revision of the range doesn't exist).  I will 
look into that some time.

- Julian


> I have assigned Issue #4217 to track this, as I want to be able to refer to 
> it 
> before having a chance to study your reply properly.
> 
> - Julian

Reply via email to