Mercurial > hg
annotate tests/test-empty @ 9116:f90bbf1ea09f
inotify: fix issue1375, add a test.
The biggest problem was the data structure, which did not allow changing
a file into a directory or vice versa. This problem is fixed by b55d44719b47.
The walk() method also had an issue in this case:
- we know 'path' as a directory. inotify server sleeps.
- 'path' is deleted
- 'path' is recreated as a file
- the server catches up here, and see the deletion. it instantiates a scan(),
which in its turn calls for walk(repo, path).
- walk() then assumes that 'path' is a directory and calls os.listdir on it,
which raises an OSError(errno.ENOTDIR)
Catch the error, and yield the file instead of the directory contents.
author | Nicolas Dumazet <nicdumz.commits@gmail.com> |
---|---|
date | Mon, 13 Jul 2009 16:49:05 +0200 |
parents | 7e5f3480c45b |
children |
rev | line source |
---|---|
1338 | 1 #!/bin/sh |
2 | |
6944
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
3 hg init a |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
4 cd a |
1338 | 5 hg log |
6 hg grep wah | |
7 hg manifest | |
8 hg verify | |
6944
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
9 ls .hg |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
10 ls .hg/store |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
11 |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
12 cd .. |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
13 hg clone a b |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
14 cd b |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
15 hg verify |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
16 ls .hg |
7e5f3480c45b
fix regression on empty repo cloning introduced by 0642d9d7ec80
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1338
diff
changeset
|
17 ls .hg/store |