Fossil SCM
Escape special characters used in the Project Name when generating the URLs for tarball and ZIP archive.
Commit
ddc313e8e1036459187f75d58ca6c950a3c4c349
Parent
6f686403d74889a…
1 file changed
+2
-1
+2
-1
| --- src/info.c | ||
| +++ src/info.c | ||
| @@ -579,11 +579,11 @@ | ||
| 579 | 579 | @ <td>%h(zUser) @ %h(zIpAddr) on %s(zDate)</td></tr> |
| 580 | 580 | } |
| 581 | 581 | db_finalize(&q2); |
| 582 | 582 | } |
| 583 | 583 | if( g.perm.Hyperlink ){ |
| 584 | - const char *zProjName = db_get("project-name", "unnamed"); | |
| 584 | + char *zProjName = mprintf("%t", db_get("project-name", "unnamed")); | |
| 585 | 585 | @ <tr><th>Timelines:</th><td> |
| 586 | 586 | @ %z(href("%R/timeline?f=%S",zUuid))family</a> |
| 587 | 587 | if( zParent ){ |
| 588 | 588 | @ | %z(href("%R/timeline?p=%S",zUuid))ancestors</a> |
| 589 | 589 | } |
| @@ -624,10 +624,11 @@ | ||
| 624 | 624 | if( g.perm.Write ){ |
| 625 | 625 | @ | %z(href("%R/ci_edit?r=%S",zUuid))edit</a> |
| 626 | 626 | } |
| 627 | 627 | @ </td> |
| 628 | 628 | @ </tr> |
| 629 | + fossil_free(zProjName); | |
| 629 | 630 | } |
| 630 | 631 | @ </table> |
| 631 | 632 | }else{ |
| 632 | 633 | style_header("Check-in Information"); |
| 633 | 634 | login_anonymous_available(); |
| 634 | 635 |
| --- src/info.c | |
| +++ src/info.c | |
| @@ -579,11 +579,11 @@ | |
| 579 | @ <td>%h(zUser) @ %h(zIpAddr) on %s(zDate)</td></tr> |
| 580 | } |
| 581 | db_finalize(&q2); |
| 582 | } |
| 583 | if( g.perm.Hyperlink ){ |
| 584 | const char *zProjName = db_get("project-name", "unnamed"); |
| 585 | @ <tr><th>Timelines:</th><td> |
| 586 | @ %z(href("%R/timeline?f=%S",zUuid))family</a> |
| 587 | if( zParent ){ |
| 588 | @ | %z(href("%R/timeline?p=%S",zUuid))ancestors</a> |
| 589 | } |
| @@ -624,10 +624,11 @@ | |
| 624 | if( g.perm.Write ){ |
| 625 | @ | %z(href("%R/ci_edit?r=%S",zUuid))edit</a> |
| 626 | } |
| 627 | @ </td> |
| 628 | @ </tr> |
| 629 | } |
| 630 | @ </table> |
| 631 | }else{ |
| 632 | style_header("Check-in Information"); |
| 633 | login_anonymous_available(); |
| 634 |
| --- src/info.c | |
| +++ src/info.c | |
| @@ -579,11 +579,11 @@ | |
| 579 | @ <td>%h(zUser) @ %h(zIpAddr) on %s(zDate)</td></tr> |
| 580 | } |
| 581 | db_finalize(&q2); |
| 582 | } |
| 583 | if( g.perm.Hyperlink ){ |
| 584 | char *zProjName = mprintf("%t", db_get("project-name", "unnamed")); |
| 585 | @ <tr><th>Timelines:</th><td> |
| 586 | @ %z(href("%R/timeline?f=%S",zUuid))family</a> |
| 587 | if( zParent ){ |
| 588 | @ | %z(href("%R/timeline?p=%S",zUuid))ancestors</a> |
| 589 | } |
| @@ -624,10 +624,11 @@ | |
| 624 | if( g.perm.Write ){ |
| 625 | @ | %z(href("%R/ci_edit?r=%S",zUuid))edit</a> |
| 626 | } |
| 627 | @ </td> |
| 628 | @ </tr> |
| 629 | fossil_free(zProjName); |
| 630 | } |
| 631 | @ </table> |
| 632 | }else{ |
| 633 | style_header("Check-in Information"); |
| 634 | login_anonymous_available(); |
| 635 |