diff options
Diffstat (limited to 'bitbake/lib/bb/utils.py')
| -rw-r--r-- | bitbake/lib/bb/utils.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py index 6592eb00dd..210e535f05 100644 --- a/bitbake/lib/bb/utils.py +++ b/bitbake/lib/bb/utils.py | |||
| @@ -461,6 +461,10 @@ def lockfile(name, shared=False, retry=True, block=False): | |||
| 461 | consider the possibility of sending a signal to the process to break | 461 | consider the possibility of sending a signal to the process to break |
| 462 | out - at which point you want block=True rather than retry=True. | 462 | out - at which point you want block=True rather than retry=True. |
| 463 | """ | 463 | """ |
| 464 | if len(name) > 255: | ||
| 465 | root, ext = os.path.splitext(name) | ||
| 466 | name = root[:255 - len(ext)] + ext | ||
| 467 | |||
| 464 | dirname = os.path.dirname(name) | 468 | dirname = os.path.dirname(name) |
| 465 | mkdirhier(dirname) | 469 | mkdirhier(dirname) |
| 466 | 470 | ||
| @@ -497,7 +501,7 @@ def lockfile(name, shared=False, retry=True, block=False): | |||
| 497 | return lf | 501 | return lf |
| 498 | lf.close() | 502 | lf.close() |
| 499 | except OSError as e: | 503 | except OSError as e: |
| 500 | if e.errno == errno.EACCES: | 504 | if e.errno == errno.EACCES or e.errno == errno.ENAMETOOLONG: |
| 501 | logger.error("Unable to acquire lock '%s', %s", | 505 | logger.error("Unable to acquire lock '%s', %s", |
| 502 | e.strerror, name) | 506 | e.strerror, name) |
| 503 | sys.exit(1) | 507 | sys.exit(1) |
