diff --git a/mercurial/exchange.py b/mercurial/exchange.py index ca2e9cf77033a93d3d8326433be3000bfc18d201_bWVyY3VyaWFsL2V4Y2hhbmdlLnB5..03cc81a282283641f6685d41ac7770577e5d0b4a_bWVyY3VyaWFsL2V4Y2hhbmdlLnB5 100644 --- a/mercurial/exchange.py +++ b/mercurial/exchange.py @@ -280,7 +280,10 @@ @pushdiscovery('obsmarker') def _pushdiscoveryobsmarkers(pushop): - pushop.outobsmarkers = pushop.repo.obsstore + if (obsolete._enabled + and pushop.repo.obsstore + and 'obsolete' in pushop.remote.listkeys('namespaces')): + pushop.outobsmarkers = pushop.repo.obsstore @pushdiscovery('bookmarks') def _pushdiscoverybookmarks(pushop): @@ -652,8 +655,7 @@ repo = pushop.repo remote = pushop.remote pushop.stepsdone.add('obsmarkers') - if (obsolete._enabled and repo.obsstore and - 'obsolete' in remote.listkeys('namespaces')): + if (pushop.outobsmarkers): rslts = [] remotedata = obsolete._pushkeyescape(pushop.outobsmarkers) for key in sorted(remotedata, reverse=True):