Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Remove some fossil_free() calls added by the previous check-in. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | softcoded-main-branch |
| Files: | files | file ages | folders |
| SHA3-256: |
6a617d004fb8c24dce022990e0fdd065 |
| User & Date: | danield 2025-10-25 13:48:33.462 |
Context
|
2025-10-25
| ||
| 17:38 | Put back a couple of overzealously deleted lines. Closed-Leaf check-in: 7832da88f5 user: danield tags: softcoded-main-branch | |
| 13:48 | Remove some fossil_free() calls added by the previous check-in. check-in: 6a617d004f user: danield tags: softcoded-main-branch | |
|
2025-10-23
| ||
| 14:50 | Replace hard-coded "trunk" with the value of 'main-branch' (defaulting to "trunk"). check-in: dd8995bbdd user: danield tags: softcoded-main-branch | |
Changes
Changes to src/branch.c.
| ︙ | ︙ | |||
899 900 901 902 903 904 905 |
@ %z(href("%R/timeline?f=%!S",zLastCkin))%h(zMergeTo)</a></td>
}else{
@ <td></td>
}
@ </tr>
}
@ </tbody></table></div>
| < | 899 900 901 902 903 904 905 906 907 908 909 910 911 912 |
@ %z(href("%R/timeline?f=%!S",zLastCkin))%h(zMergeTo)</a></td>
}else{
@ <td></td>
}
@ </tr>
}
@ </tbody></table></div>
db_finalize(&q);
builtin_request_js("fossil.page.brlist.js");
style_table_sorter();
style_finish_page();
}
/*
|
| ︙ | ︙ |
Changes to src/checkin.c.
| ︙ | ︙ | |||
1672 1673 1674 1675 1676 1677 1678 |
}else{
unsigned int r[2];
sqlite3_randomness(sizeof(r), r);
zFilename = mprintf("%scommit-description-%08x%08x.txt",
g.zLocalRoot, r[0], r[1]);
blob_write_to_file(pDesc, zFilename);
}
| < | 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 |
}else{
unsigned int r[2];
sqlite3_randomness(sizeof(r), r);
zFilename = mprintf("%scommit-description-%08x%08x.txt",
g.zLocalRoot, r[0], r[1]);
blob_write_to_file(pDesc, zFilename);
}
blob_reset(pDesc);
return zFilename;
}
/*
** Populate the Global.aCommitFile[] based on the command line arguments
|
| ︙ | ︙ |
Changes to src/descendants.c.
| ︙ | ︙ | |||
533 534 535 536 537 538 539 |
}
z = mprintf("%s [%S] %s%s", zDate, zId, zCom,
zBranchPoint ? zBranchPoint : "");
comment_print(z, zCom, 7, width, get_comment_format());
fossil_free(z);
fossil_free(zBranchPoint);
}
| < | 533 534 535 536 537 538 539 540 541 542 543 544 545 546 |
}
z = mprintf("%s [%S] %s%s", zDate, zId, zCom,
zBranchPoint ? zBranchPoint : "");
comment_print(z, zCom, 7, width, get_comment_format());
fossil_free(z);
fossil_free(zBranchPoint);
}
fossil_free(zLastBr);
db_finalize(&q);
}
/*
** WEBPAGE: leaves
**
|
| ︙ | ︙ |
Changes to src/export.c.
| ︙ | ︙ | |||
541 542 543 544 545 546 547 |
if( rid!=0 ){
do{
db_bind_int(&qc, ":rid", rid);
db_step(&qc);
db_reset(&qc);
}while((rid = bag_next(&vers, rid))!=0);
}
| < | 541 542 543 544 545 546 547 548 549 550 551 552 553 554 |
if( rid!=0 ){
do{
db_bind_int(&qc, ":rid", rid);
db_step(&qc);
db_reset(&qc);
}while((rid = bag_next(&vers, rid))!=0);
}
db_finalize(&qb);
db_finalize(&qc);
fclose(f);
}
/* Step 1: Generate "blob" records for every artifact that is part
** of a check-in
|
| ︙ | ︙ | |||
697 698 699 700 701 702 703 |
free(zMark);
}
}
db_finalize(&q4);
db_finalize(&q3);
printf("\n");
}
| < | 696 697 698 699 700 701 702 703 704 705 706 707 708 709 |
free(zMark);
}
}
db_finalize(&q4);
db_finalize(&q3);
printf("\n");
}
db_finalize(&q2);
db_finalize(&q);
manifest_cache_clear();
/* Output tags */
db_prepare(&q,
|
| ︙ | ︙ | |||
1306 1307 1308 1309 1310 1311 1312 |
blob_reset(&tagslist);
}else if( fPManifest & MFESTFLG_TAGS ){
fprintf(xCmd, "D manifest.tags\n");
}
/* The check-in is finished, so decrement the counter */
(*pnLimit)--;
| < | 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 |
blob_reset(&tagslist);
}else if( fPManifest & MFESTFLG_TAGS ){
fprintf(xCmd, "D manifest.tags\n");
}
/* The check-in is finished, so decrement the counter */
(*pnLimit)--;
return 0;
}
/*
** Create a new Git repository at zMirror to use as the mirror.
** Try to make zMainBr be the main branch for the new repository.
**
|
| ︙ | ︙ |
Changes to src/finfo.c.
| ︙ | ︙ | |||
256 257 258 259 260 261 262 |
blob_appendf(&line, "%.10s ", zDate);
blob_appendf(&line, "%8.8s ", zUser);
blob_appendf(&line, "%8.8s ", zBr);
blob_appendf(&line,"%-39.39s", zCom );
comment_print(blob_str(&line), zCom, 0, iWidth, get_comment_format());
}
}
| < | 256 257 258 259 260 261 262 263 264 265 266 267 268 269 |
blob_appendf(&line, "%.10s ", zDate);
blob_appendf(&line, "%8.8s ", zUser);
blob_appendf(&line, "%8.8s ", zBr);
blob_appendf(&line,"%-39.39s", zCom );
comment_print(blob_str(&line), zCom, 0, iWidth, get_comment_format());
}
}
db_finalize(&q);
blob_reset(&fname);
}
}
/*
** COMMAND: cat
|
| ︙ | ︙ | |||
808 809 810 811 812 813 814 |
if( tmFlags & (TIMELINE_COMPACT|TIMELINE_SIMPLE) ){
@ </span>)</span>
}else{
@ )</span>
}
@ </td></tr>
}
| < | 807 808 809 810 811 812 813 814 815 816 817 818 819 820 |
if( tmFlags & (TIMELINE_COMPACT|TIMELINE_SIMPLE) ){
@ </span>)</span>
}else{
@ )</span>
}
@ </td></tr>
}
db_finalize(&q);
db_finalize(&qparent);
if( pGraph ){
graph_finish(pGraph, 0, TIMELINE_DISJOINT);
if( pGraph->nErr ){
graph_free(pGraph);
pGraph = 0;
|
| ︙ | ︙ |
Changes to src/graph.c.
| ︙ | ︙ | |||
709 710 711 712 713 714 715 |
/* Identify rows where the primary parent is off screen. Assign
** each to a rail and draw descenders downward.
**
** Strive to put the main branch (usually "trunk") on far left.
*/
zMainBranch = db_get("main-branch", 0);
zTrunk = persistBranchName(p, zMainBranch);
| < | 709 710 711 712 713 714 715 716 717 718 719 720 721 722 |
/* Identify rows where the primary parent is off screen. Assign
** each to a rail and draw descenders downward.
**
** Strive to put the main branch (usually "trunk") on far left.
*/
zMainBranch = db_get("main-branch", 0);
zTrunk = persistBranchName(p, zMainBranch);
for(i=0; i<2; i++){
for(pRow=p->pLast; pRow; pRow=pRow->pPrev){
if( i==0 && pRow->zBranch!=zTrunk ) continue;
if( pRow->iRail>=0 ) continue;
if( pRow->isDup ) continue;
if( pRow->nParent<0 ) continue;
if( pRow->nParent==0 || hashFind(p,pRow->aParent[0])==0 ){
|
| ︙ | ︙ |
Changes to src/import.c.
| ︙ | ︙ | |||
1317 1318 1319 1320 1321 1322 1323 |
zBranch, *type);
if( branchId==0 ){
db_multi_exec("INSERT INTO xbranches (tname, ttype) VALUES(%Q, %d)",
zBranch, *type);
branchId = db_last_insert_rowid();
}
}
| < | 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 |
zBranch, *type);
if( branchId==0 ){
db_multi_exec("INSERT INTO xbranches (tname, ttype) VALUES(%Q, %d)",
zBranch, *type);
branchId = db_last_insert_rowid();
}
}
return branchId;
}
/*
** Insert content of corresponding content blob into the database.
** If content is identified as a symbolic link, then trailing
** "link " characters are removed from content.
|
| ︙ | ︙ | |||
2025 2026 2027 2028 2029 2030 2031 |
if( !incrFlag ){
fossil_print("project-id: %s\n", db_get("project-code", 0));
fossil_print("server-id: %s\n", db_get("server-code", 0));
zPassword = db_text(0, "SELECT pw FROM user WHERE login=%Q", g.zLogin);
fossil_print("admin-user: %s (password is \"%s\")\n", g.zLogin, zPassword);
hash_user_password(g.zLogin);
}
| < | 2024 2025 2026 2027 2028 2029 2030 2031 |
if( !incrFlag ){
fossil_print("project-id: %s\n", db_get("project-code", 0));
fossil_print("server-id: %s\n", db_get("server-code", 0));
zPassword = db_text(0, "SELECT pw FROM user WHERE login=%Q", g.zLogin);
fossil_print("admin-user: %s (password is \"%s\")\n", g.zLogin, zPassword);
hash_user_password(g.zLogin);
}
}
|
Changes to src/info.c.
| ︙ | ︙ | |||
1155 1156 1157 1158 1159 1160 1161 |
@ | %z(href("%R/mlink?ci=%!S",zUuid))mlink table</a>
}
if( g.anon.Write ){
@ | %z(href("%R/ci_edit?r=%!S",zUuid))edit</a>
}
@ </td>
@ </tr>
| < | 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 |
@ | %z(href("%R/mlink?ci=%!S",zUuid))mlink table</a>
}
if( g.anon.Write ){
@ | %z(href("%R/ci_edit?r=%!S",zUuid))edit</a>
}
@ </td>
@ </tr>
}
@ </table>
blob_reset(&wiki_read_links);
blob_reset(&wiki_add_links);
}else{
style_header("Check-in Information");
login_anonymous_available();
|
| ︙ | ︙ | |||
3761 3762 3763 3764 3765 3766 3767 |
@ </td></tr></table>
if( zChngTime ){
@ <p>The timestamp on the tag used to make the changes above
@ will be overridden as: %s(date_in_standard_format(zChngTime))</p>
}
@ </blockquote>
@ <hr>
| < | 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 |
@ </td></tr></table>
if( zChngTime ){
@ <p>The timestamp on the tag used to make the changes above
@ will be overridden as: %s(date_in_standard_format(zChngTime))</p>
}
@ </blockquote>
@ <hr>
blob_reset(&suffix);
}
@ <p>Make changes to attributes of check-in
@ [%z(href("%R/ci/%!S",zUuid))%s(zUuid)</a>]:</p>
form_begin(0, "%R/ci_edit");
@ <div><input type="hidden" name="r" value="%s(zUuid)">
@ <table border="0" cellspacing="10">
|
| ︙ | ︙ |
Changes to src/json_branch.c.
| ︙ | ︙ | |||
365 366 367 368 369 370 371 | cson_object_set(pay,"name",json_new_string(opt.zName)); cson_object_set(pay,"basis",json_new_string(opt.zBasis)); cson_object_set(pay,"rid",json_new_int(rid)); zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", rid); cson_object_set(pay,"uuid", json_new_string(zUuid)); cson_object_set(pay, "isPrivate", cson_value_new_bool(opt.isPrivate)); | < < | 365 366 367 368 369 370 371 372 373 374 375 376 377 378 |
cson_object_set(pay,"name",json_new_string(opt.zName));
cson_object_set(pay,"basis",json_new_string(opt.zBasis));
cson_object_set(pay,"rid",json_new_int(rid));
zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", rid);
cson_object_set(pay,"uuid", json_new_string(zUuid));
cson_object_set(pay, "isPrivate", cson_value_new_bool(opt.isPrivate));
if(opt.zColor){
cson_object_set(pay,"bgColor",json_new_string(opt.zColor));
}
goto ok;
error:
assert( 0 != g.json.resultCode );
|
| ︙ | ︙ |
Changes to src/rebuild.c.
| ︙ | ︙ | |||
364 365 366 367 368 369 370 |
if( rid==0 ) return;
/* Add the trunk tag to the root of the whole tree */
zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", rid);
if( zUuid==0 ) return;
tag_add_artifact("sym-", zMainBranch, zUuid, 0, 2, 0, 0);
tag_add_artifact("", "branch", zUuid, zMainBranch, 2, 0, 0);
| < | 364 365 366 367 368 369 370 371 372 373 374 375 376 377 |
if( rid==0 ) return;
/* Add the trunk tag to the root of the whole tree */
zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", rid);
if( zUuid==0 ) return;
tag_add_artifact("sym-", zMainBranch, zUuid, 0, 2, 0, 0);
tag_add_artifact("", "branch", zUuid, zMainBranch, 2, 0, 0);
}
/*
** Core function to rebuild the information in the derived tables of a
** fossil repository from the blobs. This function is shared between
** 'rebuild_database' ('rebuild') and 'reconstruct_cmd'
** ('reconstruct'), both of which have to regenerate this information
|
| ︙ | ︙ |
Changes to src/search.c.
| ︙ | ︙ | |||
882 883 884 885 886 887 888 |
" body('d',blob.rid,foci.filename))"
" AND %z",
zBranch, zBranch, zBranch, glob_expr("foci.filename", zDocGlob)
);
}
glob_free(pGlob);
}
| < | 882 883 884 885 886 887 888 889 890 891 892 893 894 895 |
" body('d',blob.rid,foci.filename))"
" AND %z",
zBranch, zBranch, zBranch, glob_expr("foci.filename", zDocGlob)
);
}
glob_free(pGlob);
}
fossil_free(zDocGlob);
fossil_free(zDocBr);
}
if( (srchFlags & SRCH_WIKI)!=0 ){
db_multi_exec(
"WITH wiki(name,rid,mtime) AS ("
" SELECT substr(tagname,6), tagxref.rid, max(tagxref.mtime)"
|
| ︙ | ︙ | |||
2044 2045 2046 2047 2048 2049 2050 |
"UPDATE ftsdocs SET"
" idxed=1,"
" bx=NULL,"
" label='Document: '||label"
" WHERE type='d' AND NOT idxed"
);
}
| < | 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 |
"UPDATE ftsdocs SET"
" idxed=1,"
" bx=NULL,"
" label='Document: '||label"
" WHERE type='d' AND NOT idxed"
);
}
glob_free(pGlob);
}
/*
** Deal with all of the unindexed 'c' terms in FTSDOCS
*/
static void search_update_checkin_index(void){
|
| ︙ | ︙ |
Changes to src/setup.c.
| ︙ | ︙ | |||
2369 2370 2371 2372 2373 2374 2375 |
@ <p>The SQLite search index is disabled. All searching will be
@ a full-text scan. This usually works fine, but can be slow for
@ larger repositories.</p>
select_fts_tokenizer();
@ <p><input type="submit" name="fts1" value="Create A Full-Text Index">
}
@ </div></form>
| < | 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 |
@ <p>The SQLite search index is disabled. All searching will be
@ a full-text scan. This usually works fine, but can be slow for
@ larger repositories.</p>
select_fts_tokenizer();
@ <p><input type="submit" name="fts1" value="Create A Full-Text Index">
}
@ </div></form>
style_finish_page();
}
/*
** A URL Alias originally called zOldName is now zNewName/zValue.
** Write SQL to make this change into pSql.
**
|
| ︙ | ︙ |
Changes to src/tar.c.
| ︙ | ︙ | |||
1033 1034 1035 1036 1037 1038 1039 |
blob_zero(&tarball);
if( cache_read(&tarball, zKey)==0 ){
tarball_of_checkin(rid, &tarball, zName, pInclude, pExclude, 0);
cache_write(&tarball, zKey);
}
glob_free(pInclude);
glob_free(pExclude);
| < | 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 |
blob_zero(&tarball);
if( cache_read(&tarball, zKey)==0 ){
tarball_of_checkin(rid, &tarball, zName, pInclude, pExclude, 0);
cache_write(&tarball, zKey);
}
glob_free(pInclude);
glob_free(pExclude);
fossil_free(zName);
fossil_free(zRid);
g.zOpenRevision = 0;
blob_reset(&cacheKey);
cgi_set_content(&tarball);
cgi_set_content_type("application/x-compressed");
}
|
| ︙ | ︙ |
Changes to src/timeline.c.
| ︙ | ︙ | |||
638 639 640 641 642 643 644 |
}else if( zType[0]=='e' && pGraph && zBgClr && zBgClr[0] ){
/* For technotes, make a graph node with nParent==(-1). This will
** not actually draw anything on the graph, but it will set the
** background color of the timeline entry */
gidx = graph_add_row(pGraph, rid, -1, 0, 0, zBr, zBgClr, zUuid, 0);
@ <div id="m%d(gidx)" class="tl-nodemark"></div>
}
| < | 638 639 640 641 642 643 644 645 646 647 648 649 650 651 |
}else if( zType[0]=='e' && pGraph && zBgClr && zBgClr[0] ){
/* For technotes, make a graph node with nParent==(-1). This will
** not actually draw anything on the graph, but it will set the
** background color of the timeline entry */
gidx = graph_add_row(pGraph, rid, -1, 0, 0, zBr, zBgClr, zUuid, 0);
@ <div id="m%d(gidx)" class="tl-nodemark"></div>
}
fossil_free(zBr);
@</td>
if( !isSelectedOrCurrent ){
@ <td class="timeline%s(zStyle)Cell%s(zExtraClass)" id='mc%d(gidx)'>
}else{
@ <td class="timeline%s(zStyle)Cell%s(zExtraClass)">
}
|
| ︙ | ︙ |
Changes to src/update.c.
| ︙ | ︙ | |||
756 757 758 759 760 761 762 |
char *zMainBranch = db_get("main-branch", 0);
/* Determine the check-in manifest artifact ID. Panic on failure. */
if( zRevision ){
vid = name_to_typed_rid(zRevision, "ci");
}else if( !g.localOpen ){
vid = name_to_typed_rid(zMainBranch, "ci");
| < | 756 757 758 759 760 761 762 763 764 765 766 767 768 769 |
char *zMainBranch = db_get("main-branch", 0);
/* Determine the check-in manifest artifact ID. Panic on failure. */
if( zRevision ){
vid = name_to_typed_rid(zRevision, "ci");
}else if( !g.localOpen ){
vid = name_to_typed_rid(zMainBranch, "ci");
}else{
vid = db_lget_int("checkout", 0);
if( !is_a_version(vid) ){
if( vid==0 ) return 0;
zRevision = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", vid);
if( zRevision ){
fossil_fatal("check-out artifact is not a check-in: %s", zRevision);
|
| ︙ | ︙ |
Changes to src/zip.c.
| ︙ | ︙ | |||
1122 1123 1124 1125 1126 1127 1128 |
blob_zero(&zip);
if( cache_read(&zip, zKey)==0 ){
zip_of_checkin(eType, rid, &zip, zName, pInclude, pExclude, 0);
cache_write(&zip, zKey);
}
glob_free(pInclude);
glob_free(pExclude);
| < | 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 |
blob_zero(&zip);
if( cache_read(&zip, zKey)==0 ){
zip_of_checkin(eType, rid, &zip, zName, pInclude, pExclude, 0);
cache_write(&zip, zKey);
}
glob_free(pInclude);
glob_free(pExclude);
fossil_free(zName);
fossil_free(zRid);
g.zOpenRevision = 0;
blob_reset(&cacheKey);
cgi_set_content(&zip);
if( eType==ARCHIVE_ZIP ){
cgi_set_content_type("application/zip");
|
| ︙ | ︙ |