diff tests/test-dirstate.t @ 48741:46d12f7762e4 stable

dirstate-v2: fix infinite loop in pure packer Due to the naive approach to path relative-ness, some tree shapes like the one introduced in the associated test could result in the packer going into an endless loop which allocated new `Node` objects endlessly until the process was killed by Linux's OOM killer. Differential Revision: https://phab.mercurial-scm.org/D12170
author Raphaël Gomès <rgomes@octobus.net>
date Fri, 11 Feb 2022 23:43:17 +0100
parents f7086f6173f8
children 6cfa30681a1d
line wrap: on
line diff
--- a/tests/test-dirstate.t	Tue Feb 15 15:33:33 2022 +0100
+++ b/tests/test-dirstate.t	Fri Feb 11 23:43:17 2022 +0100
@@ -103,3 +103,21 @@
   1
   $ hg status
   ? a
+
+#if dirstate-v2
+Check that folders that are prefixes of others do not throw the packer into an
+infinite loop.
+
+  $ cd ..
+  $ hg init infinite-loop
+  $ cd infinite-loop
+  $ mkdir hgext3rd hgext
+  $ touch hgext3rd/__init__.py hgext/zeroconf.py
+  $ hg commit -Aqm0
+
+  $ hg st -c
+  C hgext/zeroconf.py
+  C hgext3rd/__init__.py
+
+  $ cd ..
+#endif