diff options
author | Sebastian Thiel <byronimo@gmail.com> | 2011-06-08 01:27:28 +0200 |
---|---|---|
committer | Sebastian Thiel <byronimo@gmail.com> | 2011-06-08 01:35:16 +0200 |
commit | 90e780a3e16d0c3e4d7288728f6ba36e9c18d736 (patch) | |
tree | de5988fc3bb6a39b91cc652e9f6cc51f7015087f /git/refs/log.py | |
parent | 58a930a632c867b65b9a3802e2f4190cf32e33ee (diff) | |
download | gitpython-90e780a3e16d0c3e4d7288728f6ba36e9c18d736.tar.gz |
log: non-existing logs no longer throw an exception, but are ignored. Fixed critical bug which caused packed-ref files to be written with native line endings, which made git fail to parse it. I wonder why I never noticed this before, or ignored it. Unbelievable \!
Diffstat (limited to 'git/refs/log.py')
-rw-r--r-- | git/refs/log.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/git/refs/log.py b/git/refs/log.py index 3b9d8514..562c6caa 100644 --- a/git/refs/log.py +++ b/git/refs/log.py @@ -126,7 +126,13 @@ class RefLog(list, Serializable): # END handle filepath def _read_from_file(self): - fmap = file_contents_ro_filepath(self._path, stream=False, allow_mmap=True) + try: + fmap = file_contents_ro_filepath(self._path, stream=False, allow_mmap=True) + except OSError: + # it is possible and allowed that the file doesn't exist ! + return + #END handle invalid log + try: self._deserialize(fmap) finally: |