equal
deleted
inserted
replaced
655 paramssize = self._unpack(_fstreamparamsize)[0] |
655 paramssize = self._unpack(_fstreamparamsize)[0] |
656 if paramssize < 0: |
656 if paramssize < 0: |
657 raise error.BundleValueError('negative bundle param size: %i' |
657 raise error.BundleValueError('negative bundle param size: %i' |
658 % paramssize) |
658 % paramssize) |
659 if paramssize: |
659 if paramssize: |
660 for p in self._readexact(paramssize).split(' '): |
660 params = self._readexact(paramssize) |
661 p = p.split('=', 1) |
661 params = self._processallparams(params) |
662 p = [urllib.unquote(i) for i in p] |
|
663 if len(p) < 2: |
|
664 p.append(None) |
|
665 self._processparam(*p) |
|
666 params[p[0]] = p[1] |
|
667 return params |
662 return params |
|
663 |
|
664 def _processallparams(self, paramsblock): |
|
665 """""" |
|
666 params = {} |
|
667 for p in paramsblock.split(' '): |
|
668 p = p.split('=', 1) |
|
669 p = [urllib.unquote(i) for i in p] |
|
670 if len(p) < 2: |
|
671 p.append(None) |
|
672 self._processparam(*p) |
|
673 params[p[0]] = p[1] |
|
674 return params |
|
675 |
668 |
676 |
669 def _processparam(self, name, value): |
677 def _processparam(self, name, value): |
670 """process a parameter, applying its effect if needed |
678 """process a parameter, applying its effect if needed |
671 |
679 |
672 Parameter starting with a lower case letter are advisory and will be |
680 Parameter starting with a lower case letter are advisory and will be |