diff -r 53c265a6fc83 -r edf4fa06df94 mercurial/metadata.py --- a/mercurial/metadata.py Tue Oct 13 03:30:49 2020 +0200 +++ b/mercurial/metadata.py Tue Oct 13 05:14:37 2020 +0200 @@ -893,8 +893,11 @@ staging[r] = data r, sidedata = sidedataq.get() tokens.release() - sidedataq, has_copies_info = data - return False, (), sidedata + sidedata, has_copies_info = data + new_flag = 0 + if has_copies_info: + new_flag = sidedataflag.REVIDX_HASCOPIESINFO + return False, (), sidedata, new_flag, 0 return sidedata_companion @@ -905,10 +908,14 @@ It just compute it in the same thread on request""" def sidedatacompanion(revlog, rev): - sidedata = {} + sidedata, has_copies_info = {}, False if util.safehasattr(revlog, 'filteredrevs'): # this is a changelog sidedata, has_copies_info = _getsidedata(srcrepo, rev) - return False, (), sidedata + new_flag = 0 + if has_copies_info: + new_flag = sidedataflag.REVIDX_HASCOPIESINFO + + return False, (), sidedata, new_flag, 0 return sidedatacompanion @@ -924,6 +931,6 @@ sidedatamod.SD_FILESADDED, sidedatamod.SD_FILESREMOVED, ) - return False, f, {} + return False, f, {}, 0, sidedataflag.REVIDX_HASCOPIESINFO return sidedatacompanion