tests/test-mactext
author Nicolas Dumazet <nicdumz.commits@gmail.com>
Thu, 21 May 2009 15:55:58 +0900
changeset 8604 578f2a0049cd
parent 8167 6c82beaaa11a
permissions -rwxr-xr-x
inotify: do not recurse in handle_timeout(): call it explicitely, not in scan() When in handle_timeout, scan() is called when a repertory is created/modified. But the first line of scan calls handle_timeout. This had the consequence of calling recursively handle_timeout: * several calls to read_events (but only the first one retrieves events) * every time that an event is queued for a deferred action, the next time that scan() is called, handle_timeout is called, the event queue is treated, even if all the events haven't been read/queued yet. This could lead to inconsistencies

#!/bin/sh

cat > unix2mac.py <<EOF
import sys

for path in sys.argv[1:]:
    data = file(path, 'rb').read()
    data = data.replace('\n', '\r')
    file(path, 'wb').write(data)
EOF

cat > print.py <<EOF
import sys
print(sys.stdin.read().replace('\n', '<LF>').replace('\r', '<CR>').replace('\0', '<NUL>'))
EOF

hg init
echo '[hooks]' >> .hg/hgrc
echo 'pretxncommit.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc
echo 'pretxnchangegroup.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc
cat .hg/hgrc
echo

echo hello > f
hg add f
hg ci -m 1
echo

python unix2mac.py f
hg ci -m 2
hg cat f | python print.py
cat f | python print.py