##// END OF EJS Templates
stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev -
r51970:74c004a5 stable
parent child Browse files
Show More
@@ -292,6 +292,9 b' class revlog:'
292
292
293 @staticmethod
293 @staticmethod
294 def is_inline_index(header_bytes):
294 def is_inline_index(header_bytes):
295 if len(header_bytes) == 0:
296 return True
297
295 header = INDEX_HEADER.unpack(header_bytes)[0]
298 header = INDEX_HEADER.unpack(header_bytes)[0]
296
299
297 _format_flags = header & ~0xFFFF
300 _format_flags = header & ~0xFFFF
@@ -980,3 +980,15 b' Cloning a repo with no requirements does'
980 $ mkdir -p empty-repo/.hg
980 $ mkdir -p empty-repo/.hg
981 $ hg clone -q --stream ssh://user@dummy/empty-repo empty-repo2
981 $ hg clone -q --stream ssh://user@dummy/empty-repo empty-repo2
982 $ hg --cwd empty-repo2 verify -q
982 $ hg --cwd empty-repo2 verify -q
983
984 Cloning a repo with an empty manifestlog doesn't give some weird error
985
986 $ rm -r empty-repo; hg init empty-repo
987 $ (cd empty-repo; touch x; hg commit -Am empty; hg debugstrip -r 0) > /dev/null
988 $ hg clone -q --stream ssh://user@dummy/empty-repo empty-repo3
989 $ hg --cwd empty-repo3 verify -q 2>&1 | grep -v warning
990 [1]
991
992 The warnings filtered out here are talking about zero-length 'orphan' data files.
993 Those are harmless, so that's fine.
994
General Comments 0
You need to be logged in to leave comments. Login now