Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Prevent adding special files _FOSSIL_-journal, .fos, and .fos-journal to the repository. Ticket [97d8f830b7e5e2] |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
c193d2c2e0fe513a5a0f16528d9c3e1e |
| User & Date: | drh 2010-05-09 16:49:26.000 |
Context
|
2010-05-09
| ||
| 16:51 | Fix a documentation typo. Ticket [64386b2221309d]. ... (check-in: 11b3f31de9 user: drh tags: trunk) | |
| 16:49 | Prevent adding special files _FOSSIL_-journal, .fos, and .fos-journal to the repository. Ticket [97d8f830b7e5e2] ... (check-in: c193d2c2e0 user: drh tags: trunk) | |
|
2010-05-02
| ||
| 19:21 | Add support for URLs of the form: artifact?ci=CHECKIN&filename=FILENAME. ... (check-in: 6f9901dd42 user: drh tags: trunk) | |
Changes
Changes to src/add.c.
| ︙ | ︙ | |||
42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
Blob pathname;
const char *zPath;
file_tree_name(zName, &pathname, 1);
zPath = blob_str(&pathname);
if( strcmp(zPath, "manifest")==0
|| strcmp(zPath, "_FOSSIL_")==0
|| strcmp(zPath, "manifest.uuid")==0
|| blob_compare(&pathname, pOmit)==0
){
fossil_warning("cannot add %s", zPath);
}else{
if( !file_is_simple_pathname(zPath) ){
fossil_fatal("filename contains illegal characters: %s", zPath);
| > > > | 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
Blob pathname;
const char *zPath;
file_tree_name(zName, &pathname, 1);
zPath = blob_str(&pathname);
if( strcmp(zPath, "manifest")==0
|| strcmp(zPath, "_FOSSIL_")==0
|| strcmp(zPath, "_FOSSIL_-journal")==0
|| strcmp(zPath, ".fos")==0
|| strcmp(zPath, ".fos-journal")==0
|| strcmp(zPath, "manifest.uuid")==0
|| blob_compare(&pathname, pOmit)==0
){
fossil_warning("cannot add %s", zPath);
}else{
if( !file_is_simple_pathname(zPath) ){
fossil_fatal("filename contains illegal characters: %s", zPath);
|
| ︙ | ︙ |
Changes to src/checkin.c.
| ︙ | ︙ | |||
274 275 276 277 278 279 280 |
blob_init(&path, g.zLocalRoot, n-1);
if( zIgnoreFlag==0 ){
zIgnoreFlag = db_get("ignore-glob", 0);
}
vfile_scan(0, &path, blob_size(&path), allFlag);
db_prepare(&q,
"SELECT x FROM sfile"
| | > | 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 |
blob_init(&path, g.zLocalRoot, n-1);
if( zIgnoreFlag==0 ){
zIgnoreFlag = db_get("ignore-glob", 0);
}
vfile_scan(0, &path, blob_size(&path), allFlag);
db_prepare(&q,
"SELECT x FROM sfile"
" WHERE x NOT GLOB ('manifest','manifest.uuid','_FOSSIL_',"
"'_FOSSIL_-journal','.fos','.fos-journal');"
" AND NOT %s"
" ORDER BY 1",
glob_expr("x", zIgnoreFlag)
);
if( file_tree_name(g.zRepositoryName, &repo, 0) ){
db_multi_exec("DELETE FROM sfile WHERE x=%B", &repo);
}
|
| ︙ | ︙ | |||
319 320 321 322 323 324 325 |
db_must_be_within_tree();
db_multi_exec("CREATE TEMP TABLE sfile(x TEXT PRIMARY KEY)");
n = strlen(g.zLocalRoot);
blob_init(&path, g.zLocalRoot, n-1);
vfile_scan(0, &path, blob_size(&path), dotfilesFlag);
db_prepare(&q,
"SELECT %Q || x FROM sfile"
| | > | 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 |
db_must_be_within_tree();
db_multi_exec("CREATE TEMP TABLE sfile(x TEXT PRIMARY KEY)");
n = strlen(g.zLocalRoot);
blob_init(&path, g.zLocalRoot, n-1);
vfile_scan(0, &path, blob_size(&path), dotfilesFlag);
db_prepare(&q,
"SELECT %Q || x FROM sfile"
" WHERE x NOT IN ('manifest','manifest.uuid','_FOSSIL_',"
"'_FOSSIL_-journal','.fos','.fos-journal')"
" ORDER BY 1", g.zLocalRoot);
if( file_tree_name(g.zRepositoryName, &repo, 0) ){
db_multi_exec("DELETE FROM sfile WHERE x=%B", &repo);
}
while( db_step(&q)==SQLITE_ROW ){
if( allFlag ){
unlink(db_column_text(&q, 0));
|
| ︙ | ︙ |