aboutsummaryrefslogtreecommitdiffstats
path: root/src/spawn.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2014-04-10 12:17:19 +0000
committerWerner Koch <[email protected]>2014-04-10 12:17:19 +0000
commitd3bd8fff863f62b6d0e228aea754efbbde861e9a (patch)
treeddccf579f1938a61e687b1f8b93054e5e9029f87 /src/spawn.c
parentAdd GPGME_PROTOCOL_SPAWN and gpgme_op_spawn. (diff)
downloadgpgme-d3bd8fff863f62b6d0e228aea754efbbde861e9a.tar.gz
gpgme-d3bd8fff863f62b6d0e228aea754efbbde861e9a.zip
Actually implement flags for gpgme_op_spawn.
* src/spawn.c (gpgme_op_spawn_start, gpgme_op_spawn): Pass FLAGS dow to spawn_start and add FLAGS args along the call path. * src/engine-spawn.c (engspawn_start): Hack to automagically provide argv[0].
Diffstat (limited to 'src/spawn.c')
-rw-r--r--src/spawn.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/spawn.c b/src/spawn.c
index e3454f3b..7b3b4476 100644
--- a/src/spawn.c
+++ b/src/spawn.c
@@ -34,7 +34,8 @@ static gpgme_error_t
spawn_start (gpgme_ctx_t ctx, int synchronous,
const char *file, const char *argv[],
gpgme_data_t datain,
- gpgme_data_t dataout, gpgme_data_t dataerr)
+ gpgme_data_t dataout, gpgme_data_t dataerr,
+ unsigned int flags)
{
gpgme_error_t err;
const char *tmp_argv[2];
@@ -54,7 +55,7 @@ spawn_start (gpgme_ctx_t ctx, int synchronous,
}
return _gpgme_engine_op_spawn (ctx->engine, file, argv,
- datain, dataout, dataerr);
+ datain, dataout, dataerr, flags);
}
@@ -75,7 +76,7 @@ gpgme_op_spawn_start (gpgme_ctx_t ctx, const char *file, const char *argv[],
if (!ctx)
return TRACE_ERR (gpg_error (GPG_ERR_INV_VALUE));
- err = spawn_start (ctx, 0, file, argv, datain, dataout, dataerr);
+ err = spawn_start (ctx, 0, file, argv, datain, dataout, dataerr, flags);
return err;
}
@@ -97,7 +98,7 @@ gpgme_op_spawn (gpgme_ctx_t ctx, const char *file, const char *argv[],
if (!ctx)
return TRACE_ERR (gpg_error (GPG_ERR_INV_VALUE));
- err = spawn_start (ctx, 1, file, argv, datain, dataout, dataerr);
+ err = spawn_start (ctx, 1, file, argv, datain, dataout, dataerr, flags);
if (!err)
err = _gpgme_wait_one (ctx);