1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
|
}else{
g.zBaseURL = mprintf("http://%s%.*s", z, i, zCur);
g.zTop = &g.zBaseURL[7+strlen(z)];
g.zHttpsURL = mprintf("https://%s%.*s", z, i, zCur);
}
fossil_free(z);
}
if( db_is_writeable("repository") ){
int nBase = (int)strlen(g.zBaseURL);
char *zBase = g.zBaseURL;
if( g.nExtraURL>0 && g.nExtraURL<nBase-6 ){
zBase = fossil_strndup(g.zBaseURL, nBase - g.nExtraURL);
}
db_unprotect(PROTECT_CONFIG);
if( !db_exists("SELECT 1 FROM config WHERE name='baseurl:%q'", zBase)){
|
>
>
>
>
>
>
>
>
>
>
>
>
>
|
|
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
|
}else{
g.zBaseURL = mprintf("http://%s%.*s", z, i, zCur);
g.zTop = &g.zBaseURL[7+strlen(z)];
g.zHttpsURL = mprintf("https://%s%.*s", z, i, zCur);
}
fossil_free(z);
}
/* Try to record the base URL as a CONFIG table entry with a name
** of the form: "baseurl:BASE". This keeps a record of how the
** the repository is used as a server, to help in answering questions
** like "where is the CGI script that references this repository?"
**
** This is just a logging hint. So don't worry if it cannot be done.
** Don't try this if the repository database is not writable, for
** example.
**
** If g.useLocalauth is set, that (probably) means that we are running
** "fossil ui" and there is no point in logging those cases either.
*/
if( db_is_writeable("repository") && !g.useLocalauth ){
int nBase = (int)strlen(g.zBaseURL);
char *zBase = g.zBaseURL;
if( g.nExtraURL>0 && g.nExtraURL<nBase-6 ){
zBase = fossil_strndup(g.zBaseURL, nBase - g.nExtraURL);
}
db_unprotect(PROTECT_CONFIG);
if( !db_exists("SELECT 1 FROM config WHERE name='baseurl:%q'", zBase)){
|