Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Rename the "portable_system()" function to "fossil_system()" and move it from diffcmd.c into main.c. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
d9880a8003d983b350e19d598851edb8 |
| User & Date: | drh 2010-11-06 21:04:30.000 |
Context
|
2010-11-06
| ||
| 23:59 | Add an undocumented --noverify option to the rebuild command to skip the verify_before_commit() sanity check. ... (check-in: 6a11af1782 user: drh tags: trunk) | |
| 21:04 | Rename the "portable_system()" function to "fossil_system()" and move it from diffcmd.c into main.c. ... (check-in: d9880a8003 user: drh tags: trunk) | |
| 19:04 | Add the -R option to the ticket command. ... (check-in: 6dd81a542a user: wolfgang tags: trunk) | |
Changes
Changes to src/allrepo.c.
| ︙ | ︙ | |||
136 137 138 139 140 141 142 |
printf("%s\n", zFilename);
continue;
}
zQFilename = quoteFilename(zFilename);
zSyscmd = mprintf("%s %s %s", zFossil, zCmd, zQFilename);
printf("%s\n", zSyscmd);
fflush(stdout);
| | | 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 |
printf("%s\n", zFilename);
continue;
}
zQFilename = quoteFilename(zFilename);
zSyscmd = mprintf("%s %s %s", zFossil, zCmd, zQFilename);
printf("%s\n", zSyscmd);
fflush(stdout);
fossil_system(zSyscmd);
free(zSyscmd);
free(zQFilename);
}
/* If any repositories whose names appear in the ~/.fossil file could not
** be found, remove those names from the ~/.fossil file.
*/
|
| ︙ | ︙ |
Changes to src/checkin.c.
| ︙ | ︙ | |||
416 417 418 419 420 421 422 |
g.zLocalRoot);
#if defined(_WIN32)
blob_add_cr(&text);
#endif
blob_write_to_file(&text, zFile);
zCmd = mprintf("%s \"%s\"", zEditor, zFile);
printf("%s\n", zCmd);
| | | 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 |
g.zLocalRoot);
#if defined(_WIN32)
blob_add_cr(&text);
#endif
blob_write_to_file(&text, zFile);
zCmd = mprintf("%s \"%s\"", zEditor, zFile);
printf("%s\n", zCmd);
if( fossil_system(zCmd) ){
fossil_panic("editor aborted");
}
blob_reset(&text);
blob_read_from_file(&text, zFile);
blob_remove_cr(&text);
unlink(zFile);
free(zFile);
|
| ︙ | ︙ |
Changes to src/clearsign.c.
| ︙ | ︙ | |||
37 38 39 40 41 42 43 |
return 0;
}
zRand = db_text(0, "SELECT hex(randomblob(10))");
zOut = mprintf("out-%s", zRand);
zIn = mprintf("in-%z", zRand);
blob_write_to_file(pIn, zOut);
zCmd = mprintf("%s %s %s", zBase, zIn, zOut);
| | | 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
return 0;
}
zRand = db_text(0, "SELECT hex(randomblob(10))");
zOut = mprintf("out-%s", zRand);
zIn = mprintf("in-%z", zRand);
blob_write_to_file(pIn, zOut);
zCmd = mprintf("%s %s %s", zBase, zIn, zOut);
rc = fossil_system(zCmd);
free(zCmd);
if( rc==0 ){
if( pOut==pIn ){
blob_reset(pIn);
}
blob_zero(pOut);
blob_read_from_file(pOut, zIn);
|
| ︙ | ︙ |
Changes to src/diffcmd.c.
| ︙ | ︙ | |||
23 24 25 26 27 28 29 | /* ** Diff option flags */ #define DIFF_NEWFILE 0x01 /* Treat non-existing fails as empty files */ #define DIFF_NOEOLWS 0x02 /* Ignore whitespace at the end of lines */ | < < < < < < < < < < < < < < < < < < < < | 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | /* ** Diff option flags */ #define DIFF_NEWFILE 0x01 /* Treat non-existing fails as empty files */ #define DIFF_NOEOLWS 0x02 /* Ignore whitespace at the end of lines */ /* ** Show the difference between two files, one in memory and one on disk. ** ** The difference is the set of edits needed to transform pFile1 into ** zFile2. The content of pFile1 is in memory. zFile2 exists on disk. ** ** Use the internal diff logic if zDiffCmd is NULL. Otherwise call the |
| ︙ | ︙ | |||
104 105 106 107 108 109 110 |
blob_zero(&cmd);
blob_appendf(&cmd, "%s ", zDiffCmd);
shell_escape(&cmd, blob_str(&nameFile1));
blob_append(&cmd, " ", 1);
shell_escape(&cmd, zFile2);
/* Run the external diff command */
| | | 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
blob_zero(&cmd);
blob_appendf(&cmd, "%s ", zDiffCmd);
shell_escape(&cmd, blob_str(&nameFile1));
blob_append(&cmd, " ", 1);
shell_escape(&cmd, zFile2);
/* Run the external diff command */
fossil_system(blob_str(&cmd));
/* Delete the temporary file and clean up memory used */
unlink(blob_str(&nameFile1));
blob_reset(&nameFile1);
blob_reset(&cmd);
}
}
|
| ︙ | ︙ | |||
158 159 160 161 162 163 164 |
blob_zero(&cmd);
blob_appendf(&cmd, "%s ", zDiffCmd);
shell_escape(&cmd, zTemp1);
blob_append(&cmd, " ", 1);
shell_escape(&cmd, zTemp2);
/* Run the external diff command */
| | | 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
blob_zero(&cmd);
blob_appendf(&cmd, "%s ", zDiffCmd);
shell_escape(&cmd, zTemp1);
blob_append(&cmd, " ", 1);
shell_escape(&cmd, zTemp2);
/* Run the external diff command */
fossil_system(blob_str(&cmd));
/* Delete the temporary file and clean up memory used */
unlink(zTemp1);
unlink(zTemp2);
blob_reset(&cmd);
}
}
|
| ︙ | ︙ |
Changes to src/http_transport.c.
| ︙ | ︙ | |||
294 295 296 297 298 299 300 |
fprintf(sshOut, "\n\n");
}else if( g.urlIsFile ){
char *zCmd;
fclose(transport.pFile);
zCmd = mprintf("\"%s\" http \"%s\" \"%s\" \"%s\" 127.0.0.1",
g.argv[0], g.urlName, transport.zOutFile, transport.zInFile
);
| | | 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 |
fprintf(sshOut, "\n\n");
}else if( g.urlIsFile ){
char *zCmd;
fclose(transport.pFile);
zCmd = mprintf("\"%s\" http \"%s\" \"%s\" \"%s\" 127.0.0.1",
g.argv[0], g.urlName, transport.zOutFile, transport.zInFile
);
fossil_system(zCmd);
free(zCmd);
transport.pFile = fopen(transport.zInFile, "rb");
}
}
/*
** This routine is called when the inbound message has been received
|
| ︙ | ︙ |
Changes to src/main.c.
| ︙ | ︙ | |||
381 382 383 384 385 386 387 388 389 390 391 392 393 394 |
free(p);
}
void *fossil_realloc(void *p, size_t n){
p = realloc(p, n);
if( p==0 ) fossil_panic("out of memory");
return p;
}
/*
** Return a name for an SQLite error code
*/
static const char *sqlite_error_code_name(int iCode){
static char zCode[30];
| > > > > > > > > > > > > > > > > > > > > > | 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 |
free(p);
}
void *fossil_realloc(void *p, size_t n){
p = realloc(p, n);
if( p==0 ) fossil_panic("out of memory");
return p;
}
/*
** This function implements a cross-platform "system()" interface.
*/
int fossil_system(const char *zOrigCmd){
int rc;
#if defined(_WIN32)
/* On windows, we have to put double-quotes around the entire command.
** Who knows why - this is just the way windows works.
*/
char *zNewCmd = mprintf("\"%s\"", zOrigCmd);
rc = system(zNewCmd);
free(zNewCmd);
#else
/* On unix, evaluate the command directly.
*/
rc = system(zOrigCmd);
#endif
return rc;
}
/*
** Return a name for an SQLite error code
*/
static const char *sqlite_error_code_name(int iCode){
static char zCode[30];
|
| ︙ | ︙ |
Changes to src/winhttp.c.
| ︙ | ︙ | |||
107 108 109 110 111 112 113 |
}
fclose(out);
out = 0;
sprintf(zCmd, "\"%s\" http \"%s\" %s %s %s%s",
_pgmptr, g.zRepositoryName, zRequestFName, zReplyFName,
inet_ntoa(p->addr.sin_addr), p->zNotFound
);
| | | 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 |
}
fclose(out);
out = 0;
sprintf(zCmd, "\"%s\" http \"%s\" %s %s %s%s",
_pgmptr, g.zRepositoryName, zRequestFName, zReplyFName,
inet_ntoa(p->addr.sin_addr), p->zNotFound
);
fossil_system(zCmd);
in = fopen(zReplyFName, "rb");
if( in ){
while( (got = fread(zHdr, 1, sizeof(zHdr), in))>0 ){
send(p->s, zHdr, got, 0);
}
}
|
| ︙ | ︙ | |||
188 189 190 191 192 193 194 |
}
}
zTempPrefix = mprintf("fossil_server_P%d_", iPort);
printf("Listening for HTTP requests on TCP port %d\n", iPort);
if( zBrowser ){
zBrowser = mprintf(zBrowser, iPort);
printf("Launch webbrowser: %s\n", zBrowser);
| | | 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 |
}
}
zTempPrefix = mprintf("fossil_server_P%d_", iPort);
printf("Listening for HTTP requests on TCP port %d\n", iPort);
if( zBrowser ){
zBrowser = mprintf(zBrowser, iPort);
printf("Launch webbrowser: %s\n", zBrowser);
fossil_system(zBrowser);
}
printf("Type Ctrl-C to stop the HTTP server\n");
for(;;){
SOCKET client;
SOCKADDR_IN client_addr;
HttpRequest *p;
int len = sizeof(client_addr);
|
| ︙ | ︙ |