Fossil SCM

Avoid superfluous error messages about missing temporary tables when there are no valid files to move or remove with the --hard option.

mistachkin 2015-05-27 05:39 mvRmHardFix
Commit d272a35d26cdc091a72cd0a172870c6ada4a94e5
2 files changed +30 -26 +2 -1
+30 -26
--- src/add.c
+++ src/add.c
@@ -384,20 +384,22 @@
384384
*/
385385
static void process_files_to_remove(
386386
int dryRunFlag /* Zero to actually operate on the file-system. */
387387
){
388388
Stmt remove;
389
- db_prepare(&remove, "SELECT x FROM fremove ORDER BY x;");
390
- while( db_step(&remove)==SQLITE_ROW ){
391
- const char *zOldName = db_column_text(&remove, 0);
392
- if( !dryRunFlag ){
393
- file_delete(zOldName);
394
- }
395
- fossil_print("DELETED_FILE %s\n", zOldName);
396
- }
397
- db_finalize(&remove);
398
- db_multi_exec("DROP TABLE fremove;");
389
+ if( db_table_exists(db_name("temp"), "fremove") ){
390
+ db_prepare(&remove, "SELECT x FROM fremove ORDER BY x;");
391
+ while( db_step(&remove)==SQLITE_ROW ){
392
+ const char *zOldName = db_column_text(&remove, 0);
393
+ if( !dryRunFlag ){
394
+ file_delete(zOldName);
395
+ }
396
+ fossil_print("DELETED_FILE %s\n", zOldName);
397
+ }
398
+ db_finalize(&remove);
399
+ db_multi_exec("DROP TABLE fremove;");
400
+ }
399401
}
400402
401403
/*
402404
** COMMAND: rm
403405
** COMMAND: delete
@@ -768,26 +770,28 @@
768770
*/
769771
static void process_files_to_move(
770772
int dryRunFlag /* Zero to actually operate on the file-system. */
771773
){
772774
Stmt move;
773
- db_prepare(&move, "SELECT x, y FROM fmove ORDER BY x;");
774
- while( db_step(&move)==SQLITE_ROW ){
775
- const char *zOldName = db_column_text(&move, 0);
776
- const char *zNewName = db_column_text(&move, 1);
777
- if( !dryRunFlag ){
778
- if( file_wd_islink(zOldName) ){
779
- symlink_copy(zOldName, zNewName);
780
- }else{
781
- file_copy(zOldName, zNewName);
782
- }
783
- file_delete(zOldName);
784
- }
785
- fossil_print("MOVED_FILE %s\n", zOldName);
786
- }
787
- db_finalize(&move);
788
- db_multi_exec("DROP TABLE fmove;");
775
+ if( db_table_exists(db_name("temp"), "fmove") ){
776
+ db_prepare(&move, "SELECT x, y FROM fmove ORDER BY x;");
777
+ while( db_step(&move)==SQLITE_ROW ){
778
+ const char *zOldName = db_column_text(&move, 0);
779
+ const char *zNewName = db_column_text(&move, 1);
780
+ if( !dryRunFlag ){
781
+ if( file_wd_islink(zOldName) ){
782
+ symlink_copy(zOldName, zNewName);
783
+ }else{
784
+ file_copy(zOldName, zNewName);
785
+ }
786
+ file_delete(zOldName);
787
+ }
788
+ fossil_print("MOVED_FILE %s\n", zOldName);
789
+ }
790
+ db_finalize(&move);
791
+ db_multi_exec("DROP TABLE fmove;");
792
+ }
789793
}
790794
791795
/*
792796
** COMMAND: mv
793797
** COMMAND: rename*
794798
--- src/add.c
+++ src/add.c
@@ -384,20 +384,22 @@
384 */
385 static void process_files_to_remove(
386 int dryRunFlag /* Zero to actually operate on the file-system. */
387 ){
388 Stmt remove;
389 db_prepare(&remove, "SELECT x FROM fremove ORDER BY x;");
390 while( db_step(&remove)==SQLITE_ROW ){
391 const char *zOldName = db_column_text(&remove, 0);
392 if( !dryRunFlag ){
393 file_delete(zOldName);
394 }
395 fossil_print("DELETED_FILE %s\n", zOldName);
396 }
397 db_finalize(&remove);
398 db_multi_exec("DROP TABLE fremove;");
 
 
399 }
400
401 /*
402 ** COMMAND: rm
403 ** COMMAND: delete
@@ -768,26 +770,28 @@
768 */
769 static void process_files_to_move(
770 int dryRunFlag /* Zero to actually operate on the file-system. */
771 ){
772 Stmt move;
773 db_prepare(&move, "SELECT x, y FROM fmove ORDER BY x;");
774 while( db_step(&move)==SQLITE_ROW ){
775 const char *zOldName = db_column_text(&move, 0);
776 const char *zNewName = db_column_text(&move, 1);
777 if( !dryRunFlag ){
778 if( file_wd_islink(zOldName) ){
779 symlink_copy(zOldName, zNewName);
780 }else{
781 file_copy(zOldName, zNewName);
782 }
783 file_delete(zOldName);
784 }
785 fossil_print("MOVED_FILE %s\n", zOldName);
786 }
787 db_finalize(&move);
788 db_multi_exec("DROP TABLE fmove;");
 
 
789 }
790
791 /*
792 ** COMMAND: mv
793 ** COMMAND: rename*
794
--- src/add.c
+++ src/add.c
@@ -384,20 +384,22 @@
384 */
385 static void process_files_to_remove(
386 int dryRunFlag /* Zero to actually operate on the file-system. */
387 ){
388 Stmt remove;
389 if( db_table_exists(db_name("temp"), "fremove") ){
390 db_prepare(&remove, "SELECT x FROM fremove ORDER BY x;");
391 while( db_step(&remove)==SQLITE_ROW ){
392 const char *zOldName = db_column_text(&remove, 0);
393 if( !dryRunFlag ){
394 file_delete(zOldName);
395 }
396 fossil_print("DELETED_FILE %s\n", zOldName);
397 }
398 db_finalize(&remove);
399 db_multi_exec("DROP TABLE fremove;");
400 }
401 }
402
403 /*
404 ** COMMAND: rm
405 ** COMMAND: delete
@@ -768,26 +770,28 @@
770 */
771 static void process_files_to_move(
772 int dryRunFlag /* Zero to actually operate on the file-system. */
773 ){
774 Stmt move;
775 if( db_table_exists(db_name("temp"), "fmove") ){
776 db_prepare(&move, "SELECT x, y FROM fmove ORDER BY x;");
777 while( db_step(&move)==SQLITE_ROW ){
778 const char *zOldName = db_column_text(&move, 0);
779 const char *zNewName = db_column_text(&move, 1);
780 if( !dryRunFlag ){
781 if( file_wd_islink(zOldName) ){
782 symlink_copy(zOldName, zNewName);
783 }else{
784 file_copy(zOldName, zNewName);
785 }
786 file_delete(zOldName);
787 }
788 fossil_print("MOVED_FILE %s\n", zOldName);
789 }
790 db_finalize(&move);
791 db_multi_exec("DROP TABLE fmove;");
792 }
793 }
794
795 /*
796 ** COMMAND: mv
797 ** COMMAND: rename*
798
+2 -1
--- src/db.c
+++ src/db.c
@@ -1258,11 +1258,12 @@
12581258
** Return the name of the database "localdb", "configdb", or "repository".
12591259
*/
12601260
const char *db_name(const char *zDb){
12611261
assert( fossil_strcmp(zDb,"localdb")==0
12621262
|| fossil_strcmp(zDb,"configdb")==0
1263
- || fossil_strcmp(zDb,"repository")==0 );
1263
+ || fossil_strcmp(zDb,"repository")==0
1264
+ || fossil_strcmp(zDb,"temp")==0 );
12641265
if( fossil_strcmp(zDb, g.zMainDbType)==0 ) zDb = "main";
12651266
return zDb;
12661267
}
12671268
12681269
/*
12691270
--- src/db.c
+++ src/db.c
@@ -1258,11 +1258,12 @@
1258 ** Return the name of the database "localdb", "configdb", or "repository".
1259 */
1260 const char *db_name(const char *zDb){
1261 assert( fossil_strcmp(zDb,"localdb")==0
1262 || fossil_strcmp(zDb,"configdb")==0
1263 || fossil_strcmp(zDb,"repository")==0 );
 
1264 if( fossil_strcmp(zDb, g.zMainDbType)==0 ) zDb = "main";
1265 return zDb;
1266 }
1267
1268 /*
1269
--- src/db.c
+++ src/db.c
@@ -1258,11 +1258,12 @@
1258 ** Return the name of the database "localdb", "configdb", or "repository".
1259 */
1260 const char *db_name(const char *zDb){
1261 assert( fossil_strcmp(zDb,"localdb")==0
1262 || fossil_strcmp(zDb,"configdb")==0
1263 || fossil_strcmp(zDb,"repository")==0
1264 || fossil_strcmp(zDb,"temp")==0 );
1265 if( fossil_strcmp(zDb, g.zMainDbType)==0 ) zDb = "main";
1266 return zDb;
1267 }
1268
1269 /*
1270

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button