I try to describe my question in another way.
If the 'isempty(gval(mp)) == true && gnext(mp) != 0', it don't correct the chain.
What are the disadvantages if it correct the chain at this case.
Maybe for performance or other reasons?
I am afraid I have not understood what you want to know.
-- Roberto