| | @@ -90,11 +90,13 @@ |
| 90 | 90 | va_list ap; |
| 91 | 91 | va_start(ap, zFormat); |
| 92 | 92 | zUrl = vmprintf(zFormat, ap); |
| 93 | 93 | va_end(ap); |
| 94 | 94 | if( g.perm.Hyperlink && !g.javascriptHyperlink ){ |
| 95 | | - return mprintf("<a %s href=\"%z\">", zExtra, zUrl); |
| 95 | + char *zHUrl = mprintf("<a %s href=\"%h\">", zExtra, zUrl); |
| 96 | + fossil_free(zUrl); |
| 97 | + return zHUrl; |
| 96 | 98 | } |
| 97 | 99 | if( nHref>=nHrefAlloc ){ |
| 98 | 100 | nHrefAlloc = nHrefAlloc*2 + 10; |
| 99 | 101 | aHref = fossil_realloc(aHref, nHrefAlloc*sizeof(aHref[0])); |
| 100 | 102 | } |
| | @@ -106,11 +108,13 @@ |
| 106 | 108 | va_list ap; |
| 107 | 109 | va_start(ap, zFormat); |
| 108 | 110 | zUrl = vmprintf(zFormat, ap); |
| 109 | 111 | va_end(ap); |
| 110 | 112 | if( g.perm.Hyperlink && !g.javascriptHyperlink ){ |
| 111 | | - return mprintf("<a href=\"%z\">", zUrl); |
| 113 | + char *zHUrl = mprintf("<a href=\"%h\">", zUrl); |
| 114 | + fossil_free(zUrl); |
| 115 | + return zHUrl; |
| 112 | 116 | } |
| 113 | 117 | if( nHref>=nHrefAlloc ){ |
| 114 | 118 | nHrefAlloc = nHrefAlloc*2 + 10; |
| 115 | 119 | aHref = fossil_realloc(aHref, nHrefAlloc*sizeof(aHref[0])); |
| 116 | 120 | } |
| | @@ -278,11 +282,11 @@ |
| 278 | 282 | for(i=0; i<nSubmenu; i++){ |
| 279 | 283 | struct Submenu *p = &aSubmenu[i]; |
| 280 | 284 | if( p->zLink==0 ){ |
| 281 | 285 | @ <span class="label">%h(p->zLabel)</span> |
| 282 | 286 | }else{ |
| 283 | | - @ <a class="label" href="%s(p->zLink)">%h(p->zLabel)</a> |
| 287 | + @ <a class="label" href="%h(p->zLink)">%h(p->zLabel)</a> |
| 284 | 288 | } |
| 285 | 289 | } |
| 286 | 290 | @ </div> |
| 287 | 291 | } |
| 288 | 292 | style_ad_unit(); |
| 289 | 293 | |