Fossil SCM
In the hyperlink on the "Last Sync URL", omit the username to prevent warnings from Firefox.
Commit
172c2235a46e173e29266677b606f7ff6d96cbf54e921a9223ade14cb5788d48
Parent
d4fc9120e1b718e…
2 files changed
+3
-1
+6
-1
+3
-1
| --- src/stat.c | ||
| +++ src/stat.c | ||
| @@ -383,11 +383,13 @@ | ||
| 383 | 383 | @ </table> |
| 384 | 384 | zRemote = db_text(0, "SELECT value FROM config WHERE name='last-sync-url'"); |
| 385 | 385 | if( zRemote ){ |
| 386 | 386 | @ <div class="section">Last Sync URL</div> |
| 387 | 387 | if( sqlite3_strlike("http%", zRemote, 0)==0 ){ |
| 388 | - @ <p><a href='%h(zRemote)'>%h(zRemote)</a> | |
| 388 | + UrlData x; | |
| 389 | + url_parse_local(zRemote, URL_OMIT_USER, &x); | |
| 390 | + @ <p><a href='%h(x.canonical)'>%h(zRemote)</a> | |
| 389 | 391 | }else{ |
| 390 | 392 | @ <p>%h(zRemote)</p> |
| 391 | 393 | } |
| 392 | 394 | @ </div> |
| 393 | 395 | } |
| 394 | 396 |
| --- src/stat.c | |
| +++ src/stat.c | |
| @@ -383,11 +383,13 @@ | |
| 383 | @ </table> |
| 384 | zRemote = db_text(0, "SELECT value FROM config WHERE name='last-sync-url'"); |
| 385 | if( zRemote ){ |
| 386 | @ <div class="section">Last Sync URL</div> |
| 387 | if( sqlite3_strlike("http%", zRemote, 0)==0 ){ |
| 388 | @ <p><a href='%h(zRemote)'>%h(zRemote)</a> |
| 389 | }else{ |
| 390 | @ <p>%h(zRemote)</p> |
| 391 | } |
| 392 | @ </div> |
| 393 | } |
| 394 |
| --- src/stat.c | |
| +++ src/stat.c | |
| @@ -383,11 +383,13 @@ | |
| 383 | @ </table> |
| 384 | zRemote = db_text(0, "SELECT value FROM config WHERE name='last-sync-url'"); |
| 385 | if( zRemote ){ |
| 386 | @ <div class="section">Last Sync URL</div> |
| 387 | if( sqlite3_strlike("http%", zRemote, 0)==0 ){ |
| 388 | UrlData x; |
| 389 | url_parse_local(zRemote, URL_OMIT_USER, &x); |
| 390 | @ <p><a href='%h(x.canonical)'>%h(zRemote)</a> |
| 391 | }else{ |
| 392 | @ <p>%h(zRemote)</p> |
| 393 | } |
| 394 | @ </div> |
| 395 | } |
| 396 |
+6
-1
| --- src/url.c | ||
| +++ src/url.c | ||
| @@ -38,10 +38,11 @@ | ||
| 38 | 38 | #define URL_PROMPT_PW 0x001 /* Prompt for password if needed */ |
| 39 | 39 | #define URL_REMEMBER 0x002 /* Remember the url for later reuse */ |
| 40 | 40 | #define URL_ASK_REMEMBER_PW 0x004 /* Ask whether to remember prompted pw */ |
| 41 | 41 | #define URL_REMEMBER_PW 0x008 /* Should remember pw */ |
| 42 | 42 | #define URL_PROMPTED 0x010 /* Prompted for PW already */ |
| 43 | +#define URL_OMIT_USER 0x020 /* Omit the user name from URL */ | |
| 43 | 44 | |
| 44 | 45 | /* |
| 45 | 46 | ** The URL related data used with this subsystem. |
| 46 | 47 | */ |
| 47 | 48 | struct UrlData { |
| @@ -153,11 +154,15 @@ | ||
| 153 | 154 | dehttpize(pUrlData->passwd); |
| 154 | 155 | } |
| 155 | 156 | if( pUrlData->isSsh ){ |
| 156 | 157 | urlFlags &= ~URL_ASK_REMEMBER_PW; |
| 157 | 158 | } |
| 158 | - zLogin = mprintf("%t@", pUrlData->user); | |
| 159 | + if( urlFlags & URL_OMIT_USER ){ | |
| 160 | + zLogin = mprintf(""); | |
| 161 | + }else{ | |
| 162 | + zLogin = mprintf("%t@", pUrlData->user); | |
| 163 | + } | |
| 159 | 164 | for(j=i+1; (c=zUrl[j])!=0 && c!='/' && c!=':'; j++){} |
| 160 | 165 | pUrlData->name = mprintf("%.*s", j-i-1, &zUrl[i+1]); |
| 161 | 166 | i = j; |
| 162 | 167 | }else{ |
| 163 | 168 | int inSquare = 0; |
| 164 | 169 |
| --- src/url.c | |
| +++ src/url.c | |
| @@ -38,10 +38,11 @@ | |
| 38 | #define URL_PROMPT_PW 0x001 /* Prompt for password if needed */ |
| 39 | #define URL_REMEMBER 0x002 /* Remember the url for later reuse */ |
| 40 | #define URL_ASK_REMEMBER_PW 0x004 /* Ask whether to remember prompted pw */ |
| 41 | #define URL_REMEMBER_PW 0x008 /* Should remember pw */ |
| 42 | #define URL_PROMPTED 0x010 /* Prompted for PW already */ |
| 43 | |
| 44 | /* |
| 45 | ** The URL related data used with this subsystem. |
| 46 | */ |
| 47 | struct UrlData { |
| @@ -153,11 +154,15 @@ | |
| 153 | dehttpize(pUrlData->passwd); |
| 154 | } |
| 155 | if( pUrlData->isSsh ){ |
| 156 | urlFlags &= ~URL_ASK_REMEMBER_PW; |
| 157 | } |
| 158 | zLogin = mprintf("%t@", pUrlData->user); |
| 159 | for(j=i+1; (c=zUrl[j])!=0 && c!='/' && c!=':'; j++){} |
| 160 | pUrlData->name = mprintf("%.*s", j-i-1, &zUrl[i+1]); |
| 161 | i = j; |
| 162 | }else{ |
| 163 | int inSquare = 0; |
| 164 |
| --- src/url.c | |
| +++ src/url.c | |
| @@ -38,10 +38,11 @@ | |
| 38 | #define URL_PROMPT_PW 0x001 /* Prompt for password if needed */ |
| 39 | #define URL_REMEMBER 0x002 /* Remember the url for later reuse */ |
| 40 | #define URL_ASK_REMEMBER_PW 0x004 /* Ask whether to remember prompted pw */ |
| 41 | #define URL_REMEMBER_PW 0x008 /* Should remember pw */ |
| 42 | #define URL_PROMPTED 0x010 /* Prompted for PW already */ |
| 43 | #define URL_OMIT_USER 0x020 /* Omit the user name from URL */ |
| 44 | |
| 45 | /* |
| 46 | ** The URL related data used with this subsystem. |
| 47 | */ |
| 48 | struct UrlData { |
| @@ -153,11 +154,15 @@ | |
| 154 | dehttpize(pUrlData->passwd); |
| 155 | } |
| 156 | if( pUrlData->isSsh ){ |
| 157 | urlFlags &= ~URL_ASK_REMEMBER_PW; |
| 158 | } |
| 159 | if( urlFlags & URL_OMIT_USER ){ |
| 160 | zLogin = mprintf(""); |
| 161 | }else{ |
| 162 | zLogin = mprintf("%t@", pUrlData->user); |
| 163 | } |
| 164 | for(j=i+1; (c=zUrl[j])!=0 && c!='/' && c!=':'; j++){} |
| 165 | pUrlData->name = mprintf("%.*s", j-i-1, &zUrl[i+1]); |
| 166 | i = j; |
| 167 | }else{ |
| 168 | int inSquare = 0; |
| 169 |