tests/test-gendoc-ro.t
author Yuya Nishihara <yuya@tcha.org>
Sat, 03 Mar 2018 23:49:39 -0500
changeset 36701 d77c3b023393
parent 31104 8346b2f09e79
permissions -rw-r--r--
lock: block signal interrupt while making a lock file On Windows where symlink isn't supported, util.makelock() could leave an empty file if interrupted immediately after os.open(). This empty lock never dies as it has no process id recorded. ld = os.open(pathname, os.O_CREAT | os.O_WRONLY | os.O_EXCL) # an interrupt may occur here os.write(ld, info) os.close(ld) This was a long-standing bug of TortoiseHg which runs a command-server and kills it by CTRL_C_EVENT, reported by random Windows users. https://bitbucket.org/tortoisehg/thg/issues/4873/#comment-43591129 At first, I tried to fix makelock() to clean up a stale lock file, which turned out to be hard because any instructions may be interrupted by a signal. ld = None try: # CALL_FUNCTION # os.open(...) # an interrupt may occur here # STORE_FAST # ld = ... ld = os.open(pathname, os.O_CREAT | os.O_WRONLY | os.O_EXCL) os.write(ld, info) ... return True except: if ld: ... os.unlink(pathname) return False So I decided to block signals by temporarily replacing the signal handlers so makelcok() and held = 1 will never be interrupted. Many thanks to Fernando Najera for investigating the issue.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
28809
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     1
#require docutils gettext
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     2
30993
9c2977ceaa46 pager: move more behavior into core
Augie Fackler <augie@google.com>
parents: 28809
diff changeset
     3
Error: the current ro localization has some rst defects exposed by
9c2977ceaa46 pager: move more behavior into core
Augie Fackler <augie@google.com>
parents: 28809
diff changeset
     4
moving pager to core. These two warnings about references are expected
9c2977ceaa46 pager: move more behavior into core
Augie Fackler <augie@google.com>
parents: 28809
diff changeset
     5
until the localization is corrected.
28809
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     6
  $ $TESTDIR/check-gendoc ro
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     7
  checking for parse errors
31104
8346b2f09e79 color: add the definition of '--color' in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30993
diff changeset
     8
  gendoc.txt:58: (WARNING/2) Inline interpreted text or phrase reference start-string without end-string.
8346b2f09e79 color: add the definition of '--color' in core
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30993
diff changeset
     9
  gendoc.txt:58: (WARNING/2) Inline interpreted text or phrase reference start-string without end-string.