Show More
@@ -150,6 +150,13 b' def tryreadcache(repo, hideable):' | |||||
150 | count = len(data) / 4 |
|
150 | count = len(data) / 4 | |
151 | hidden = frozenset(struct.unpack('>%ii' % count, data)) |
|
151 | hidden = frozenset(struct.unpack('>%ii' % count, data)) | |
152 | return hidden |
|
152 | return hidden | |
|
153 | except struct.error: | |||
|
154 | repo.ui.debug('corrupted hidden cache\n') | |||
|
155 | # No need to fix the content as it will get rewritten | |||
|
156 | return None | |||
|
157 | except (IOError, OSError): | |||
|
158 | repo.ui.debug('cannot read hidden cache\n') | |||
|
159 | return None | |||
153 | finally: |
|
160 | finally: | |
154 | if fh: |
|
161 | if fh: | |
155 | fh.close() |
|
162 | fh.close() |
@@ -951,6 +951,23 b' Test heads computation on pending index ' | |||||
951 | $ hg amendtransient |
|
951 | $ hg amendtransient | |
952 | [1, 3] |
|
952 | [1, 3] | |
953 |
|
953 | |||
|
954 | Check that corrupted hidden cache does not crash | |||
|
955 | ||||
|
956 | $ printf "" > .hg/cache/hidden | |||
|
957 | $ hg log -r . -T '{node}' --debug | |||
|
958 | corrupted hidden cache | |||
|
959 | 8fd96dfc63e51ed5a8af1bec18eb4b19dbf83812 (no-eol) | |||
|
960 | $ hg log -r . -T '{node}' --debug | |||
|
961 | 8fd96dfc63e51ed5a8af1bec18eb4b19dbf83812 (no-eol) | |||
|
962 | ||||
|
963 | Check that wrong hidden cache permission does not crash | |||
|
964 | ||||
|
965 | $ chmod 000 .hg/cache/hidden | |||
|
966 | $ hg log -r . -T '{node}' --debug | |||
|
967 | cannot read hidden cache | |||
|
968 | error writing hidden changesets cache | |||
|
969 | 8fd96dfc63e51ed5a8af1bec18eb4b19dbf83812 (no-eol) | |||
|
970 | ||||
954 | Test cache consistency for the visible filter |
|
971 | Test cache consistency for the visible filter | |
955 | 1) We want to make sure that the cached filtered revs are invalidated when |
|
972 | 1) We want to make sure that the cached filtered revs are invalidated when | |
956 | bookmarks change |
|
973 | bookmarks change |
General Comments 0
You need to be logged in to leave comments.
Login now