Fossil SCM

Consistent naming of tarball links.

drh 2025-10-18 12:37 timeline-enhance-2025
Commit 3d63613a7e7afac5d517cb0ff048f4d6d6b5397a1622a6ab821d6ea6b13ad73d
1 file changed +5 -20
+5 -20
--- src/info.c
+++ src/info.c
@@ -993,34 +993,19 @@
993993
@ <tr><th>Comment:</th><td class="infoComment">\
994994
@ %!W(zEComment?zEComment:zComment)</td></tr>
995995
996996
/* The Download: line */
997997
if( g.perm.Zip ){
998
- char *zPJ = db_get("short-project-name", 0);
999
- char *zUrl;
1000
- Blob projName;
1001
- int jj;
1002
- if( zPJ==0 ) zPJ = db_get("project-name", "unnamed");
1003
- blob_zero(&projName);
1004
- blob_append(&projName, zPJ, -1);
1005
- blob_trim(&projName);
1006
- zPJ = blob_str(&projName);
1007
- for(jj=0; zPJ[jj]; jj++){
1008
- if( (zPJ[jj]>0 && zPJ[jj]<' ') || strchr("\"*/:<>?\\|", zPJ[jj]) ){
1009
- zPJ[jj] = '_';
1010
- }
1011
- }
1012
- zUrl = mprintf("%R/tarball/%S/%t-%S.tar.gz", zUuid, zPJ, zUuid);
998
+ char *zBase = archive_base_name(rid);
1013999
@ <tr><th>Downloads:</th><td>
1014
- @ %z(href("%s",zUrl))Tarball</a>
1015
- @ | %z(href("%R/zip/%S/%t-%S.zip",zUuid, zPJ,zUuid))ZIP archive</a>
1000
+ @ %z(href("%R/tarball/%S/%s.tar.gz",zUuid,zBase))Tarball</a>
1001
+ @ | %z(href("%R/zip/%S/%s.zip",zUuid,zBase))ZIP archive</a>
10161002
if( g.zLogin!=0 ){
1017
- @ | %z(href("%R/sqlar/%S/%t-%S.sqlar",zUuid,zPJ,zUuid))\
1003
+ @ | %z(href("%R/sqlar/%S/%s.sqlar",zUuid,zBase))\
10181004
@ SQL archive</a></td></tr>
10191005
}
1020
- fossil_free(zUrl);
1021
- blob_reset(&projName);
1006
+ fossil_free(zBase);
10221007
}
10231008
10241009
@ <tr><th>Timelines:</th><td>
10251010
@ %z(href("%R/timeline?f=%!S&unhide",zUuid))family</a>
10261011
if( zParent ){
10271012
--- src/info.c
+++ src/info.c
@@ -993,34 +993,19 @@
993 @ <tr><th>Comment:</th><td class="infoComment">\
994 @ %!W(zEComment?zEComment:zComment)</td></tr>
995
996 /* The Download: line */
997 if( g.perm.Zip ){
998 char *zPJ = db_get("short-project-name", 0);
999 char *zUrl;
1000 Blob projName;
1001 int jj;
1002 if( zPJ==0 ) zPJ = db_get("project-name", "unnamed");
1003 blob_zero(&projName);
1004 blob_append(&projName, zPJ, -1);
1005 blob_trim(&projName);
1006 zPJ = blob_str(&projName);
1007 for(jj=0; zPJ[jj]; jj++){
1008 if( (zPJ[jj]>0 && zPJ[jj]<' ') || strchr("\"*/:<>?\\|", zPJ[jj]) ){
1009 zPJ[jj] = '_';
1010 }
1011 }
1012 zUrl = mprintf("%R/tarball/%S/%t-%S.tar.gz", zUuid, zPJ, zUuid);
1013 @ <tr><th>Downloads:</th><td>
1014 @ %z(href("%s",zUrl))Tarball</a>
1015 @ | %z(href("%R/zip/%S/%t-%S.zip",zUuid, zPJ,zUuid))ZIP archive</a>
1016 if( g.zLogin!=0 ){
1017 @ | %z(href("%R/sqlar/%S/%t-%S.sqlar",zUuid,zPJ,zUuid))\
1018 @ SQL archive</a></td></tr>
1019 }
1020 fossil_free(zUrl);
1021 blob_reset(&projName);
1022 }
1023
1024 @ <tr><th>Timelines:</th><td>
1025 @ %z(href("%R/timeline?f=%!S&unhide",zUuid))family</a>
1026 if( zParent ){
1027
--- src/info.c
+++ src/info.c
@@ -993,34 +993,19 @@
993 @ <tr><th>Comment:</th><td class="infoComment">\
994 @ %!W(zEComment?zEComment:zComment)</td></tr>
995
996 /* The Download: line */
997 if( g.perm.Zip ){
998 char *zBase = archive_base_name(rid);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
999 @ <tr><th>Downloads:</th><td>
1000 @ %z(href("%R/tarball/%S/%s.tar.gz",zUuid,zBase))Tarball</a>
1001 @ | %z(href("%R/zip/%S/%s.zip",zUuid,zBase))ZIP archive</a>
1002 if( g.zLogin!=0 ){
1003 @ | %z(href("%R/sqlar/%S/%s.sqlar",zUuid,zBase))\
1004 @ SQL archive</a></td></tr>
1005 }
1006 fossil_free(zBase);
 
1007 }
1008
1009 @ <tr><th>Timelines:</th><td>
1010 @ %z(href("%R/timeline?f=%!S&unhide",zUuid))family</a>
1011 if( zParent ){
1012

Keyboard Shortcuts

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