/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to server.py

  • Committer: Jelmer Vernooij
  • Date: 2018-03-02 01:59:40 UTC
  • mfrom: (0.200.1791 work)
  • mto: (0.200.1795 work)
  • mto: This revision was merged to the branch mainline in revision 6960.
  • Revision ID: jelmer@jelmer.uk-20180302015940-41gwnoymxc2go3bq
Merge trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
73
73
        self.refs = get_refs_container(self.repo_dir, self.object_store)
74
74
 
75
75
    def get_refs(self):
76
 
        self.object_store.lock_read()
77
 
        try:
 
76
        with self.object_store.lock_read():
78
77
            return self.refs.as_dict()
79
 
        finally:
80
 
            self.object_store.unlock()
81
78
 
82
79
    def get_peeled(self, name):
83
80
        cached = self.refs.get_peeled(name)
88
85
    def fetch_objects(self, determine_wants, graph_walker, progress,
89
86
        get_tagged=None):
90
87
        """Yield git objects to send to client """
91
 
        self.object_store.lock_read()
92
 
        try:
 
88
        with self.object_store.lock_read():
93
89
            wants = determine_wants(self.get_refs())
94
90
            have = self.object_store.find_common_revisions(graph_walker)
95
91
            if wants is None:
96
92
                return
97
93
            return self.object_store.generate_pack_contents(have, wants, progress,
98
94
                get_tagged, lossy=(not self.mapping.roundtripping))
99
 
        finally:
100
 
            self.object_store.unlock()
101
95
 
102
96
 
103
97
class BzrTCPGitServer(TCPGitServer):