hgext/fastannotate/protocol.py
changeset 48913 f254fc73d956
parent 48875 6000f5b25c9b
child 49735 8c6f783917e7
equal deleted inserted replaced
48912:a0674e916fb6 48913:f254fc73d956
    12 from mercurial.pycompat import open
    12 from mercurial.pycompat import open
    13 from mercurial import (
    13 from mercurial import (
    14     error,
    14     error,
    15     extensions,
    15     extensions,
    16     hg,
    16     hg,
    17     pycompat,
       
    18     util,
    17     util,
    19     wireprotov1peer,
    18     wireprotov1peer,
    20     wireprotov1server,
    19     wireprotov1server,
    21 )
    20 )
    22 from mercurial.utils import (
    21 from mercurial.utils import (
   187             )
   186             )
   188 
   187 
   189         for result in results:
   188         for result in results:
   190             r = result.result()
   189             r = result.result()
   191             # TODO: pconvert these paths on the server?
   190             # TODO: pconvert these paths on the server?
   192             r = {util.pconvert(p): v for p, v in pycompat.iteritems(r)}
   191             r = {util.pconvert(p): v for p, v in r.items()}
   193             for path in sorted(r):
   192             for path in sorted(r):
   194                 # ignore malicious paths
   193                 # ignore malicious paths
   195                 if not path.startswith(b'fastannotate/') or b'/../' in (
   194                 if not path.startswith(b'fastannotate/') or b'/../' in (
   196                     path + b'/'
   195                     path + b'/'
   197                 ):
   196                 ):