mercurial/wireproto.py
changeset 26686 3e7f675628ad
parent 26587 56b2bcea2529
child 26690 704818fb170d
equal deleted inserted replaced
26685:ea390d889d3a 26686:3e7f675628ad
   623         elif keytype == 'csv':
   623         elif keytype == 'csv':
   624             opts[k] = list(v.split(','))
   624             opts[k] = list(v.split(','))
   625         elif keytype == 'scsv':
   625         elif keytype == 'scsv':
   626             opts[k] = set(v.split(','))
   626             opts[k] = set(v.split(','))
   627         elif keytype == 'boolean':
   627         elif keytype == 'boolean':
   628             opts[k] = bool(v)
   628             # Client should serialize False as '0', which is a non-empty string
       
   629             # so it evaluates as a True bool.
       
   630             if v == '0':
       
   631                 opts[k] = False
       
   632             else:
       
   633                 opts[k] = bool(v)
   629         elif keytype != 'plain':
   634         elif keytype != 'plain':
   630             raise KeyError('unknown getbundle option type %s'
   635             raise KeyError('unknown getbundle option type %s'
   631                            % keytype)
   636                            % keytype)
   632     cg = exchange.getbundle(repo, 'serve', **opts)
   637     cg = exchange.getbundle(repo, 'serve', **opts)
   633     return streamres(proto.groupchunks(cg))
   638     return streamres(proto.groupchunks(cg))