diff options
| -rw-r--r-- | bitbake/lib/bb/fetch2/__init__.py | 4 | ||||
| -rw-r--r-- | bitbake/lib/bb/tests/fetch.py | 15 |
2 files changed, 17 insertions, 2 deletions
diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index 3529531ca1..37fed16e4e 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py | |||
| @@ -290,12 +290,12 @@ class URI(object): | |||
| 290 | 290 | ||
| 291 | def _param_str_split(self, string, elmdelim, kvdelim="="): | 291 | def _param_str_split(self, string, elmdelim, kvdelim="="): |
| 292 | ret = collections.OrderedDict() | 292 | ret = collections.OrderedDict() |
| 293 | for k, v in [x.split(kvdelim, 1) for x in string.split(elmdelim) if x]: | 293 | for k, v in [x.split(kvdelim, 1) if kvdelim in x else (x, None) for x in string.split(elmdelim) if x]: |
| 294 | ret[k] = v | 294 | ret[k] = v |
| 295 | return ret | 295 | return ret |
| 296 | 296 | ||
| 297 | def _param_str_join(self, dict_, elmdelim, kvdelim="="): | 297 | def _param_str_join(self, dict_, elmdelim, kvdelim="="): |
| 298 | return elmdelim.join([kvdelim.join([k, v]) for k, v in dict_.items()]) | 298 | return elmdelim.join([kvdelim.join([k, v]) if v else k for k, v in dict_.items()]) |
| 299 | 299 | ||
| 300 | @property | 300 | @property |
| 301 | def hostport(self): | 301 | def hostport(self): |
diff --git a/bitbake/lib/bb/tests/fetch.py b/bitbake/lib/bb/tests/fetch.py index e988e26c0a..85c1f79ff3 100644 --- a/bitbake/lib/bb/tests/fetch.py +++ b/bitbake/lib/bb/tests/fetch.py | |||
| @@ -308,6 +308,21 @@ class URITest(unittest.TestCase): | |||
| 308 | 'params': {"someparam" : "1"}, | 308 | 'params': {"someparam" : "1"}, |
| 309 | 'query': {}, | 309 | 'query': {}, |
| 310 | 'relative': True | 310 | 'relative': True |
| 311 | }, | ||
| 312 | "https://www.innodisk.com/Download_file?9BE0BF6657;downloadfilename=EGPL-T101.zip": { | ||
| 313 | 'uri': 'https://www.innodisk.com/Download_file?9BE0BF6657;downloadfilename=EGPL-T101.zip', | ||
| 314 | 'scheme': 'https', | ||
| 315 | 'hostname': 'www.innodisk.com', | ||
| 316 | 'port': None, | ||
| 317 | 'hostport': 'www.innodisk.com', | ||
| 318 | 'path': '/Download_file', | ||
| 319 | 'userinfo': '', | ||
| 320 | 'userinfo': '', | ||
| 321 | 'username': '', | ||
| 322 | 'password': '', | ||
| 323 | 'params': {"downloadfilename" : "EGPL-T101.zip"}, | ||
| 324 | 'query': {"9BE0BF6657": None}, | ||
| 325 | 'relative': False | ||
| 311 | } | 326 | } |
| 312 | 327 | ||
| 313 | } | 328 | } |
