Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Simplify the autosync_loop() interface by omitting the second parameter, which was always the value of the "autosync-tries" setting. Have the autosync_loop() function look up the autosync-tries setting for itself. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
9445f8a8a2b5177bab3ed4ec2e75a24a |
| User & Date: | drh 2022-04-15 12:33:46.088 |
Context
|
2022-04-15
| ||
| 12:41 | Fix the "fossil open" command so that it honors global settings. check-in: 24420b4e63 user: drh tags: trunk | |
| 12:33 | Simplify the autosync_loop() interface by omitting the second parameter, which was always the value of the "autosync-tries" setting. Have the autosync_loop() function look up the autosync-tries setting for itself. check-in: 9445f8a8a2 user: drh tags: trunk | |
|
2022-04-13
| ||
| 16:27 | On the /info view for a checkin which has a branch/branch-name wiki page, correct the Edit Wiki link to use /wikiedit instead of /wiki if permissions allow, otherwise the /wiki page's automatic redirection of branch/branch-name wiki pages to the timeline makes it impossible to get to the editor for a branch-specific wiki page. check-in: 82510672b8 user: stephan tags: trunk | |
Changes
Changes to src/branch.c.
| ︙ | ︙ | |||
219 220 221 222 223 224 225 | } /* Commit */ db_end_transaction(0); /* Do an autosync push, if requested */ | | | 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 | } /* Commit */ db_end_transaction(0); /* Do an autosync push, if requested */ if( !isPrivate ) autosync_loop(SYNC_PUSH, 0); } /* ** Create a TEMP table named "tmp_brlist" with 7 columns: ** ** name Name of the branch ** mtime Time of last checkin on this branch |
| ︙ | ︙ |
Changes to src/checkin.c.
| ︙ | ︙ | |||
2344 2345 2346 2347 2348 2349 2350 |
** Autosync if autosync is enabled and this is not a private check-in.
*/
if( !g.markPrivate ){
int syncFlags = SYNC_PULL;
if( vid!=0 && !allowFork && !forceFlag ){
syncFlags |= SYNC_CKIN_LOCK;
}
| | | 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 |
** Autosync if autosync is enabled and this is not a private check-in.
*/
if( !g.markPrivate ){
int syncFlags = SYNC_PULL;
if( vid!=0 && !allowFork && !forceFlag ){
syncFlags |= SYNC_CKIN_LOCK;
}
if( autosync_loop(syncFlags, 1) ){
fossil_exit(1);
}
}
/* So that older versions of Fossil (that do not understand delta-
** manifest) can continue to use this repository, do not create a new
** delta-manifest unless this repository already contains one or more
|
| ︙ | ︙ | |||
2550 2551 2552 2553 2554 2555 2556 |
db_end_transaction(0);
db_begin_transaction();
if( !g.markPrivate && vid!=0 && !allowFork && !forceFlag ){
/* Do another auto-pull, renewing the check-in lock. Then set
** bRecheck so that we loop back above to verify that the check-in
** is still not against a closed branch and still won't fork. */
int syncFlags = SYNC_PULL|SYNC_CKIN_LOCK;
| | | 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 |
db_end_transaction(0);
db_begin_transaction();
if( !g.markPrivate && vid!=0 && !allowFork && !forceFlag ){
/* Do another auto-pull, renewing the check-in lock. Then set
** bRecheck so that we loop back above to verify that the check-in
** is still not against a closed branch and still won't fork. */
int syncFlags = SYNC_PULL|SYNC_CKIN_LOCK;
if( autosync_loop(syncFlags, 1) ){
fossil_fatal("Auto-pull failed. Commit aborted.");
}
bRecheck = 1;
}
}else{
blob_zero(&comment);
}
|
| ︙ | ︙ | |||
2863 2864 2865 2866 2867 2868 2869 |
blob_write_to_file(&tagslist, zManifestFile);
blob_reset(&tagslist);
free(zManifestFile);
}
if( !g.markPrivate ){
int syncFlags = SYNC_PUSH | SYNC_PULL | SYNC_IFABLE;
| < | | 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 |
blob_write_to_file(&tagslist, zManifestFile);
blob_reset(&tagslist);
free(zManifestFile);
}
if( !g.markPrivate ){
int syncFlags = SYNC_PUSH | SYNC_PULL | SYNC_IFABLE;
autosync_loop(syncFlags, 0);
}
if( count_nonbranch_children(vid)>1 ){
fossil_print("**** warning: a fork has occurred *****\n");
}else{
leaf_ambiguity_warning(nvid,nvid);
}
}
|
Changes to src/db.c.
| ︙ | ︙ | |||
3764 3765 3766 3767 3768 3769 3770 |
if( !emptyFlag ){
if( g.argc==4 ){
g.zOpenRevision = g.argv[3];
}else if( db_exists("SELECT 1 FROM event WHERE type='ci'") ){
g.zOpenRevision = db_get("main-branch", 0);
}
if( !bNosync
| | | 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 |
if( !emptyFlag ){
if( g.argc==4 ){
g.zOpenRevision = g.argv[3];
}else if( db_exists("SELECT 1 FROM event WHERE type='ci'") ){
g.zOpenRevision = db_get("main-branch", 0);
}
if( !bNosync
&& autosync_loop(SYNC_PULL, 1)
&& !bForce
){
fossil_fatal("unable to auto-sync the repository");
}
}
|
| ︙ | ︙ |
Changes to src/merge.c.
| ︙ | ︙ | |||
405 406 407 408 409 410 411 |
if( vid==0 ){
fossil_fatal("nothing is checked out");
}
if( forceFlag==0 && leaf_is_closed(vid) ){
fossil_fatal("cannot merge into a closed leaf. Use --force to override");
}
if( !dryRunFlag ){
| | < | 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 |
if( vid==0 ){
fossil_fatal("nothing is checked out");
}
if( forceFlag==0 && leaf_is_closed(vid) ){
fossil_fatal("cannot merge into a closed leaf. Use --force to override");
}
if( !dryRunFlag ){
if( autosync_loop(SYNC_PULL + SYNC_VERBOSE*verboseFlag, 1) ){
fossil_fatal("merge abandoned due to sync failure");
}
}
/* Find mid, the artifactID of the version to be merged into the current
** check-out */
if( g.argc==3 ){
|
| ︙ | ︙ |
Changes to src/sync.c.
| ︙ | ︙ | |||
148 149 150 151 152 153 154 |
rc = client_sync(flags, configSync, 0, 0);
}
return rc;
}
/*
** This routine will try a number of times to perform autosync with a
| | > | > | 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 |
rc = client_sync(flags, configSync, 0, 0);
}
return rc;
}
/*
** This routine will try a number of times to perform autosync with a
** 0.5 second sleep between attempts. The number of attempts is determined
** by the "autosync-tries" setting, which defaults to 1.
**
** Return zero on success and non-zero on a failure. If failure occurs
** and doPrompt flag is true, ask the user if they want to continue, and
** if they answer "yes" then return zero in spite of the failure.
*/
int autosync_loop(int flags, int doPrompt){
int n = 0;
int rc = 0;
int nTries = db_get_int("autosync-tries", 1);
if( (flags & (SYNC_PUSH|SYNC_PULL))==(SYNC_PUSH|SYNC_PULL)
&& db_get_boolean("uv-sync",0)
){
flags |= SYNC_UNVERSIONED;
}
while( (n==0 || n<nTries) && (rc=autosync(flags)) ){
if( rc ){
|
| ︙ | ︙ |
Changes to src/update.c.
| ︙ | ︙ | |||
163 164 165 166 167 168 169 |
/* We should be done with options.. */
verify_all_options();
db_must_be_within_tree();
vid = db_lget_int("checkout", 0);
user_select();
if( !dryRunFlag && !internalUpdate && !bNosync ){
| | < | 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 |
/* We should be done with options.. */
verify_all_options();
db_must_be_within_tree();
vid = db_lget_int("checkout", 0);
user_select();
if( !dryRunFlag && !internalUpdate && !bNosync ){
if( autosync_loop(SYNC_PULL + SYNC_VERBOSE*verboseFlag, 1) ){
fossil_fatal("update abandoned due to sync failure");
}
}
/* Create any empty directories now, as well as after the update,
** so changes in settings are reflected now */
if( !dryRunFlag ) ensure_empty_dirs_created(0);
|
| ︙ | ︙ |