If the child zip-process fails, throw an IOException, like with all the other 
errors.


Project: http://git-wip-us.apache.org/repos/asf/logging-log4cxx/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4cxx/commit/ef4a25f4
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4cxx/tree/ef4a25f4
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4cxx/diff/ef4a25f4

Branch: refs/heads/master
Commit: ef4a25f4b92bac5432d781993cca9a015055ca8a
Parents: b05ebb7
Author: Thorsten Schöning <[email protected]>
Authored: Fri Jul 8 06:27:32 2016 +0000
Committer: Thorsten Schöning <[email protected]>
Committed: Fri Jul 8 06:27:32 2016 +0000

----------------------------------------------------------------------
 src/main/cpp/zipcompressaction.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4cxx/blob/ef4a25f4/src/main/cpp/zipcompressaction.cpp
----------------------------------------------------------------------
diff --git a/src/main/cpp/zipcompressaction.cpp 
b/src/main/cpp/zipcompressaction.cpp
index 90f6333..a67d8ec 100644
--- a/src/main/cpp/zipcompressaction.cpp
+++ b/src/main/cpp/zipcompressaction.cpp
@@ -81,7 +81,9 @@ bool ZipCompressAction::execute(log4cxx::helpers::Pool& p) 
const
        stat = apr_proc_create(&pid, "zip", args, NULL, attr, aprpool);
        if (stat != APR_SUCCESS) throw IOException(stat);
 
-       apr_proc_wait(&pid, NULL, NULL, APR_WAIT);
+       int exitCode;
+       apr_proc_wait(&pid, &exitCode, NULL, APR_WAIT);
+       if (exitCode != APR_SUCCESS) throw IOException(exitCode);
 
        if (deleteSource)
        {

Reply via email to