diff options
author | drh <drh@noemail.net> | 2013-04-06 14:04:22 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2013-04-06 14:04:22 +0000 |
commit | f012ae07593dfe0006e579200f27e4f53f420d5e (patch) | |
tree | 3c14d22ea8ca54f87d9c18a6208fa40b5db416ec /mptest/mptest.c | |
parent | 3f5bc38037eda131bd0505cd8961e4955d5ce0cf (diff) | |
download | sqlite-f012ae07593dfe0006e579200f27e4f53f420d5e.tar.gz sqlite-f012ae07593dfe0006e579200f27e4f53f420d5e.zip |
Get the mptest program running on windows.
FossilOrigin-Name: 3966b33284355325afda627ed6f4e26f967438f8
Diffstat (limited to 'mptest/mptest.c')
-rw-r--r-- | mptest/mptest.c | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/mptest/mptest.c b/mptest/mptest.c index e07e974de..ae7777038 100644 --- a/mptest/mptest.c +++ b/mptest/mptest.c @@ -22,6 +22,7 @@ ** Recommended options: ** ** -DHAVE_USLEEP +** -DSQLITE_MAX_SCHEMA_RETRY=100 ** -DSQLITE_NO_SYNC ** -DSQLITE_THREADSAFE=0 ** -DSQLITE_OMIT_LOAD_EXTENSION @@ -542,14 +543,35 @@ static int finishScript(int iClient, int taskId, int bShutdown){ static void startClient(int iClient){ runSql("INSERT OR IGNORE INTO client VALUES(%d,0)", iClient); if( sqlite3_changes(g.db) ){ +#if defined(__unix__) char *zSys; zSys = sqlite3_mprintf( "%s \"%s\" --client %d --trace %d %s&", g.argv0, g.zDbFile, iClient, g.iTrace, g.bSqlTrace ? "--sqltrace " : ""); - system(zSys); sqlite3_free(zSys); +#endif +#if defined(_WIN32) + char *argv[10]; + char zClient[20]; + char zTrace[20]; + argv[0] = g.argv0; + argv[1] = g.zDbFile; + argv[2] = "--client"; + sqlite3_snprintf(sizeof(zClient),zClient,"%d",iClient); + argv[3] = zClient; + argv[4] = "--trace"; + sqlite3_snprintf(sizeof(zTrace),zTrace,"%d",g.iTrace); + argv[5] = zTrace; + if( g.bSqlTrace ){ + argv[6] = "--sqltrace"; + argv[7] = 0; + }else{ + argv[6] = 0; + } + _spawnv(_P_NOWAIT, g.argv0, argv); +#endif } } |