Fossil SCM

Fix the "add" command so that it prints "SKIP" instead of "ADDED" for files that are already under management. Code to do this was already in place, but it did not work correctly due to a logic error.

drh 2015-12-14 23:13 trunk
Commit d252cfd66d3c8f713c7f180def23931c67195539
1 file changed +2 -1
+2 -1
--- src/add.c
+++ src/add.c
@@ -168,11 +168,12 @@
168168
return 0;
169169
}
170170
if( db_exists("SELECT 1 FROM vfile"
171171
" WHERE pathname=%Q %s", zPath, filename_collation()) ){
172172
db_multi_exec("UPDATE vfile SET deleted=0"
173
- " WHERE pathname=%Q %s", zPath, filename_collation());
173
+ " WHERE pathname=%Q %s AND deleted",
174
+ zPath, filename_collation());
174175
}else{
175176
char *zFullname = mprintf("%s%s", g.zLocalRoot, zPath);
176177
int isExe = file_wd_isexe(zFullname);
177178
db_multi_exec(
178179
"INSERT INTO vfile(vid,deleted,rid,mrid,pathname,isexe,islink)"
179180
--- src/add.c
+++ src/add.c
@@ -168,11 +168,12 @@
168 return 0;
169 }
170 if( db_exists("SELECT 1 FROM vfile"
171 " WHERE pathname=%Q %s", zPath, filename_collation()) ){
172 db_multi_exec("UPDATE vfile SET deleted=0"
173 " WHERE pathname=%Q %s", zPath, filename_collation());
 
174 }else{
175 char *zFullname = mprintf("%s%s", g.zLocalRoot, zPath);
176 int isExe = file_wd_isexe(zFullname);
177 db_multi_exec(
178 "INSERT INTO vfile(vid,deleted,rid,mrid,pathname,isexe,islink)"
179
--- src/add.c
+++ src/add.c
@@ -168,11 +168,12 @@
168 return 0;
169 }
170 if( db_exists("SELECT 1 FROM vfile"
171 " WHERE pathname=%Q %s", zPath, filename_collation()) ){
172 db_multi_exec("UPDATE vfile SET deleted=0"
173 " WHERE pathname=%Q %s AND deleted",
174 zPath, filename_collation());
175 }else{
176 char *zFullname = mprintf("%s%s", g.zLocalRoot, zPath);
177 int isExe = file_wd_isexe(zFullname);
178 db_multi_exec(
179 "INSERT INTO vfile(vid,deleted,rid,mrid,pathname,isexe,islink)"
180

Keyboard Shortcuts

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