1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-15 11:41:13 +03:00

Performance improvement and bug fix in sqlite3WinDelete(). (CVS 3445)

FossilOrigin-Name: 46ac1ac2d10cf2f1ebfb8dd4bb9a2ccffd85e816
This commit is contained in:
drh
2006-09-26 00:34:17 +00:00
parent 7f986a651e
commit 50c2b35ea7
3 changed files with 12 additions and 10 deletions

View File

@@ -1,5 +1,5 @@
C CVS\smalfunctioned\son\sthe\sprevious\scheck-in.\s\sMake\ssure\sthe\srevision\sto\ndate.c\swas\sreceived.\s\sTicket\s#1991.\s(CVS\s3444)
D 2006-09-25T18:05:04
C Performance\simprovement\sand\sbug\sfix\sin\ssqlite3WinDelete().\s(CVS\s3445)
D 2006-09-26T00:34:18
F Makefile.in cabd42d34340f49260bc2a7668c38eba8d4cfd99
F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -74,7 +74,7 @@ F src/os_test.c 49833426101f99aee4bb5f6a44b7c4b2029fda1c
F src/os_test.h 903c93554c23d88f34f667f1979e4a1cee792af3
F src/os_unix.c 3ed7fd1639c052d1df167321917a39ba738c46c9
F src/os_unix.h 5768d56d28240d3fe4537fac08cc85e4fb52279e
F src/os_win.c a66763099e093785bee7e8cff3baef01868b2e73
F src/os_win.c 6c9da4c76186999f3a709f00e5be3162bd0482eb
F src/os_win.h 41a946bea10f61c158ce8645e7646b29d44f122b
F src/pager.c 0f966f7fa225c377da2021fbbfdd50a48d877000
F src/pager.h 0cff9de5e9019cb695a04d18df8caaaff933a272
@@ -399,7 +399,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
P 51b9c755ea01528e32690aabe91236ed917369f1
R 16a54898bdd88e4f2298e9240a32bfda
P 433dac1f2924d00282ef952668b21a9c023c93cb
R adfaafd21ebd33f9c19d737c37fb9013
U drh
Z 8d1c7066ea960a79af02d14d93066c8a
Z 34da4a23531e2f2bbe863c8e85206ba7

View File

@@ -1 +1 @@
433dac1f2924d00282ef952668b21a9c023c93cb
46ac1ac2d10cf2f1ebfb8dd4bb9a2ccffd85e816

View File

@@ -495,7 +495,8 @@ int sqlite3WinDelete(const char *zFilename){
if( zWide ){
do{
rc = DeleteFileW(zWide);
}while( rc==0 && cnt++ < MX_DELETION_ATTEMPTS && (Sleep(100), 1) );
}while( rc==0 && GetFileAttributesW(zWide)!=0xffffffff
&& cnt++ < MX_DELETION_ATTEMPTS && (Sleep(100), 1) );
sqliteFree(zWide);
}else{
#if OS_WINCE
@@ -503,11 +504,12 @@ int sqlite3WinDelete(const char *zFilename){
#else
do{
rc = DeleteFileA(zFilename);
}while( rc==0 && cnt++ < MX_DELETION_ATTEMPTS && (Sleep(100), 1) );
}while( rc==0 && GetFileAttributesA(zFilename)
&& cnt++ < MX_DELETION_ATTEMPTS && (Sleep(100), 1) );
#endif
}
TRACE2("DELETE \"%s\"\n", zFilename);
return rc==0 ? SQLITE_OK : SQLITE_IOERR;
return rc!=0 ? SQLITE_OK : SQLITE_IOERR;
}
/*