HomePhabricator

arbitraryfilecontext: skip the cmp fast path if any side is a symlink

Authored by phillco.

Description

arbitraryfilecontext: skip the cmp fast path if any side is a symlink

filecmp follows symlinks by default, which a filectx.cmp() call should not
be doing as it should only compare the requested entry. After this patch, only
the contexts' data are compared, which is the correct contract.

This is a corrected version of D1122.

Differential Revision: https://phab.mercurial-scm.org/D1165