The point-adjustment feature needs to record the previous
position of point, to know in which direction to move it in
order to exit the invisible area: if point moved to a larger
buffer position and entered invisible text, point-adjustment
wants to move it further forward; if it moved towards lower
position, point-adjustment wants to move it back. The bug was
that last point position was recorded in a global variable, and
M-x enters recursive-edit, which clobbered that variable's value
with the value from the minibuffer.