tests/test-dirstate-backup.t
author Yuya Nishihara <yuya@tcha.org>
Fri, 15 Jun 2018 22:16:58 +0900
branchstable
changeset 37877 ae7f27867c2a
parent 34940 c2b30348930f
child 45846 8d72e29ad1e0
permissions -rw-r--r--
manifest: fix possible SEGV caused by uninitialized lazymanifest fields Before, uninitialized self->pydata would be passed to lazymanifest_dealloc() on OOM, and Py_DECREF(self->pydata) would crash if we were unlucky. It's still wrong to do malloc() thingy in tp_init because __init__() may be called more than once [1], but I don't want to go a step further in stable branch. [1]: https://docs.python.org/2/c-api/typeobj.html#c.PyTypeObject.tp_new "The tp_new function should ... do only as much further initialization as is absolutely necessary. Initialization that can safely be ignored or repeated should be placed in the tp_init handler."
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
34939
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     1
Set up
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     2
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     3
  $ hg init repo
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     4
  $ cd repo
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     5
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     6
Try to import an empty patch
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     7
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     8
  $ hg import --no-commit - <<EOF
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
     9
  > EOF
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
    10
  applying patch from stdin
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
    11
  abort: stdin: no diffs found
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
    12
  [255]
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
    13
34940
c2b30348930f dirstate: clean up when restoring identical backups
Mark Thomas <mbthomas@fb.com>
parents: 34939
diff changeset
    14
No dirstate backups are left behind
34939
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
    15
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
    16
  $ ls .hg/dirstate* | sort
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
    17
  .hg/dirstate
2c80a864e83e tests: add a test demonstrating failure to clean up dirstate backups
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
    18