1722 updated += msupdated |
1722 updated += msupdated |
1723 merged += msmerged |
1723 merged += msmerged |
1724 removed += msremoved |
1724 removed += msremoved |
1725 |
1725 |
1726 extraactions = ms.actions() |
1726 extraactions = ms.actions() |
1727 if extraactions: |
|
1728 for k, acts in pycompat.iteritems(extraactions): |
|
1729 for a in acts: |
|
1730 mresult.addfile(a[0], k, *a[1:]) |
|
1731 if k == mergestatemod.ACTION_GET and wantfiledata: |
|
1732 # no filedata until mergestate is updated to provide it |
|
1733 for a in acts: |
|
1734 getfiledata[a[0]] = None |
|
1735 |
1727 |
1736 progress.complete() |
1728 progress.complete() |
1737 assert len(getfiledata) == ( |
1729 return ( |
1738 mresult.len((mergestatemod.ACTION_GET,)) if wantfiledata else 0 |
1730 updateresult(updated, merged, removed, unresolved), |
|
1731 getfiledata, |
|
1732 extraactions, |
1739 ) |
1733 ) |
1740 return updateresult(updated, merged, removed, unresolved), getfiledata |
|
1741 |
1734 |
1742 |
1735 |
1743 def _advertisefsmonitor(repo, num_gets, p1node): |
1736 def _advertisefsmonitor(repo, num_gets, p1node): |
1744 # Advertise fsmonitor when its presence could be useful. |
1737 # Advertise fsmonitor when its presence could be useful. |
1745 # |
1738 # |
2120 _advertisefsmonitor( |
2113 _advertisefsmonitor( |
2121 repo, mresult.len((mergestatemod.ACTION_GET,)), p1.node() |
2114 repo, mresult.len((mergestatemod.ACTION_GET,)), p1.node() |
2122 ) |
2115 ) |
2123 |
2116 |
2124 wantfiledata = updatedirstate and not branchmerge |
2117 wantfiledata = updatedirstate and not branchmerge |
2125 stats, getfiledata = applyupdates( |
2118 stats, getfiledata, extraactions = applyupdates( |
2126 repo, |
2119 repo, |
2127 mresult, |
2120 mresult, |
2128 wc, |
2121 wc, |
2129 p2, |
2122 p2, |
2130 overwrite, |
2123 overwrite, |
2131 wantfiledata, |
2124 wantfiledata, |
2132 labels=labels, |
2125 labels=labels, |
2133 ) |
2126 ) |
2134 |
2127 |
2135 if updatedirstate: |
2128 if updatedirstate: |
|
2129 if extraactions: |
|
2130 for k, acts in pycompat.iteritems(extraactions): |
|
2131 for a in acts: |
|
2132 mresult.addfile(a[0], k, *a[1:]) |
|
2133 if k == mergestatemod.ACTION_GET and wantfiledata: |
|
2134 # no filedata until mergestate is updated to provide it |
|
2135 for a in acts: |
|
2136 getfiledata[a[0]] = None |
|
2137 |
|
2138 assert len(getfiledata) == ( |
|
2139 mresult.len((mergestatemod.ACTION_GET,)) if wantfiledata else 0 |
|
2140 ) |
2136 with repo.dirstate.parentchange(): |
2141 with repo.dirstate.parentchange(): |
2137 repo.setparents(fp1, fp2) |
2142 repo.setparents(fp1, fp2) |
2138 mergestatemod.recordupdates( |
2143 mergestatemod.recordupdates( |
2139 repo, mresult.actionsdict, branchmerge, getfiledata |
2144 repo, mresult.actionsdict, branchmerge, getfiledata |
2140 ) |
2145 ) |