Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Add support for setting environment variables from within CGI script files. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
0af7024db1246f1fad4ff6b23aa03879 |
| User & Date: | mistachkin 2015-01-22 02:59:48.545 |
Context
|
2015-01-22
| ||
| 09:16 | Update SQLite to the 3.8.8.1 release check-in: 282f1fc542 user: jan.nijtmans tags: trunk | |
| 02:59 | Add support for setting environment variables from within CGI script files. check-in: 0af7024db1 user: mistachkin tags: trunk | |
| 02:47 | Merge updates from trunk. Closed-Leaf check-in: 878b5663d5 user: mistachkin tags: cgiSetEnv | |
| 02:44 | Update the custom MinGW makefile. check-in: 448c9cfae5 user: mistachkin tags: trunk | |
Changes
Changes to src/file.c.
| ︙ | ︙ | |||
1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 |
fossil_unicode_free(uName);
#else
char *zValue = getenv(zName);
#endif
if( zValue ) zValue = fossil_filename_to_utf8(zValue);
return zValue;
}
/*
** Like fopen() but always takes a UTF8 argument.
*/
FILE *fossil_fopen(const char *zName, const char *zMode){
#ifdef _WIN32
wchar_t *uMode = fossil_utf8_to_unicode(zMode);
| > > > > > > > > > > > > > > > > > > > | 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 |
fossil_unicode_free(uName);
#else
char *zValue = getenv(zName);
#endif
if( zValue ) zValue = fossil_filename_to_utf8(zValue);
return zValue;
}
/*
** Sets the value of an environment variable as UTF8.
*/
int fossil_setenv(const char *zName, const char *zValue){
int rc;
char *zString = mprintf("%s=%s", zName, zValue);
#ifdef _WIN32
wchar_t *uString = fossil_utf8_to_unicode(zString);
rc = _wputenv(uString);
fossil_unicode_free(uString);
fossil_free(zString);
#else
rc = putenv(zString);
/* NOTE: Cannot free the string on POSIX. */
/* fossil_free(zString); */
#endif
return rc;
}
/*
** Like fopen() but always takes a UTF8 argument.
*/
FILE *fossil_fopen(const char *zName, const char *zMode){
#ifdef _WIN32
wchar_t *uMode = fossil_utf8_to_unicode(zMode);
|
| ︙ | ︙ |
Changes to src/main.c.
| ︙ | ︙ | |||
1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 |
blob_reset(&value2);
continue;
}
if( blob_eq(&key, "files:") && blob_token(&line, &value) ){
pFileGlob = glob_create(blob_str(&value));
blob_reset(&value);
continue;
}
}
blob_reset(&config);
if( g.db==0 && g.zRepositoryName==0 && nRedirect==0 ){
cgi_panic("Unable to find or open the project repository");
}
cgi_init();
| > > > > > > > | 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 |
blob_reset(&value2);
continue;
}
if( blob_eq(&key, "files:") && blob_token(&line, &value) ){
pFileGlob = glob_create(blob_str(&value));
blob_reset(&value);
continue;
}
if( blob_eq(&key, "setenv:") && blob_token(&line, &value)
&& blob_token(&line, &value2) ){
fossil_setenv(blob_str(&value), blob_str(&value2));
blob_reset(&value);
blob_reset(&value2);
continue;
}
}
blob_reset(&config);
if( g.db==0 && g.zRepositoryName==0 && nRedirect==0 ){
cgi_panic("Unable to find or open the project repository");
}
cgi_init();
|
| ︙ | ︙ |