summaryrefslogtreecommitdiff
path: root/src/bindings/compat/c/c_interface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/bindings/compat/c/c_interface.cpp')
-rw-r--r--src/bindings/compat/c/c_interface.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/bindings/compat/c/c_interface.cpp b/src/bindings/compat/c/c_interface.cpp
index 6540f428c..8219d5169 100644
--- a/src/bindings/compat/c/c_interface.cpp
+++ b/src/bindings/compat/c/c_interface.cpp
@@ -31,6 +31,7 @@
//#include "fdstream.h"
#include <string>
#include <cassert>
+#include <cerrno>
#include <unistd.h>
#ifdef CVC4_DEBUG
@@ -862,7 +863,12 @@ extern "C" void vc_printExprFile(VC vc, Expr e, int fd)
CVC3::ValidityChecker* cvc = (CVC3::ValidityChecker*) vc;
cvc->printExpr(fromExpr(e), ss);
string s = ss.str();
- write(fd, s.c_str(), s.size());
+ ssize_t e = write(fd, s.c_str(), s.size());
+ if(e < 0) {
+ IF_DEBUG(cerr << "write() failed, errno == " << errno << endl;)
+ c_interface_error_string = "write() failed";
+ c_interface_error_flag = errno;
+ }
} catch(CVC3::Exception ex) {
signal_error("vc_printExpr",error_int,ex);
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback