diff options
author | Hans Bolinder <[email protected]> | 2013-03-19 09:46:33 +0100 |
---|---|---|
committer | Hans Bolinder <[email protected]> | 2013-03-19 09:46:33 +0100 |
commit | e3bd19e7cde34070f60a83e180279040284b0034 (patch) | |
tree | c0930c875741df9c1c4f46b88507b11b70cfda96 /lib/stdlib/src | |
parent | 0c713345472e69bc1b31e81306e5e2c6dd061653 (diff) | |
parent | ab15d1c6ea041f1d4a8b5897f9f4ca7c4c4d86d0 (diff) | |
download | otp-e3bd19e7cde34070f60a83e180279040284b0034.tar.gz otp-e3bd19e7cde34070f60a83e180279040284b0034.tar.bz2 otp-e3bd19e7cde34070f60a83e180279040284b0034.zip |
Merge branch 'maint'
* maint:
Fix a test case
Fix a test case
Fix a test case bug
Fix a test case bug
Remove ?line from dets_SUITE.erl
Adjust dets.erl to cope with an evil test case
Correct a disk_log testcase
Diffstat (limited to 'lib/stdlib/src')
-rw-r--r-- | lib/stdlib/src/dets.erl | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/lib/stdlib/src/dets.erl b/lib/stdlib/src/dets.erl index ecb509f4b5..45aef0ea80 100644 --- a/lib/stdlib/src/dets.erl +++ b/lib/stdlib/src/dets.erl @@ -2837,14 +2837,18 @@ fsck_try(Fd, Tab, FH, Fname, SlotNumbers, Version) -> tempfile(Fname) -> Tmp = lists:concat([Fname, ".TMP"]), + tempfile(Tmp, 10). + +tempfile(Tmp, 0) -> + Tmp; +tempfile(Tmp, N) -> case file:delete(Tmp) of {error, eacces} -> % 'dets_process_died' happened anyway... (W-nd-ws) - timer:sleep(5000), - file:delete(Tmp); + timer:sleep(1000), + tempfile(Tmp, N-1); _ -> - ok - end, - Tmp. + Tmp + end. %% -> {ok, NewHead} | {try_again, integer()} | Error fsck_try_est(Head, Fd, Fname, SlotNumbers, FH) -> |