summaryrefslogtreecommitdiff
path: root/src/logic/slbt_exec_execute.c
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2016-09-02 16:27:16 -0400
committermidipix <writeonce@midipix.org>2016-09-03 23:23:36 -0400
commita47c7a49974f17bf83932ab21ae4c644c30bde62 (patch)
treeb809d22f2f6828ecc757d59169f0858aa39c578f /src/logic/slbt_exec_execute.c
parent9149bce21bae5daf7d643ed843280751914e6707 (diff)
downloadslibtool-a47c7a49974f17bf83932ab21ae4c644c30bde62.tar.bz2
slibtool-a47c7a49974f17bf83932ab21ae4c644c30bde62.tar.xz
execute mode: added error trace support.
Diffstat (limited to 'src/logic/slbt_exec_execute.c')
-rw-r--r--src/logic/slbt_exec_execute.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/logic/slbt_exec_execute.c b/src/logic/slbt_exec_execute.c
index 277bb30..2b422d2 100644
--- a/src/logic/slbt_exec_execute.c
+++ b/src/logic/slbt_exec_execute.c
@@ -12,6 +12,7 @@
#include <slibtool/slibtool.h>
#include "slibtool_spawn_impl.h"
+#include "slibtool_errinfo_impl.h"
int slbt_exec_execute(
const struct slbt_driver_ctx * dctx,
@@ -50,7 +51,7 @@ int slbt_exec_execute(
script)
>= sizeof(wrapper)) {
slbt_free_exec_ctx(actx);
- return -1;
+ return SLBT_BUFFER_ERROR(dctx);
}
/* exeref */
@@ -76,11 +77,11 @@ int slbt_exec_execute(
if (!(dctx->cctx->drvflags & SLBT_DRIVER_SILENT))
if (slbt_output_execute(dctx,ectx)) {
slbt_free_exec_ctx(actx);
- return -1;
+ return SLBT_NESTED_ERROR(dctx);
}
execvp(wrapper,ectx->argv);
slbt_free_exec_ctx(actx);
- return -1;
+ return SLBT_SYSTEM_ERROR(dctx);
}