summaryrefslogtreecommitdiff
path: root/tools/caffe.cpp
diff options
context:
space:
mode:
authorJonathan L Long <jonlong@cs.berkeley.edu>2015-05-14 22:17:19 -0700
committerJonathan L Long <jonlong@cs.berkeley.edu>2015-05-14 22:17:19 -0700
commitcebce771309b1c07dd0fb2eb18b9b37667d955dc (patch)
tree8b939420b5fab673d05f55c59ba307ea35730c9b /tools/caffe.cpp
parent41d13c08e883588badf9d00b60c0dc24c7905fd1 (diff)
downloadcaffeonacl-cebce771309b1c07dd0fb2eb18b9b37667d955dc.tar.gz
caffeonacl-cebce771309b1c07dd0fb2eb18b9b37667d955dc.tar.bz2
caffeonacl-cebce771309b1c07dd0fb2eb18b9b37667d955dc.zip
print Python exceptions when using Python layer with the caffe tool
Diffstat (limited to 'tools/caffe.cpp')
-rw-r--r--tools/caffe.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/tools/caffe.cpp b/tools/caffe.cpp
index 70b15f89..6967a46f 100644
--- a/tools/caffe.cpp
+++ b/tools/caffe.cpp
@@ -8,6 +8,11 @@
#include "boost/algorithm/string.hpp"
#include "caffe/caffe.hpp"
+#ifdef WITH_PYTHON_LAYER
+#include "boost/python.hpp"
+namespace bp = boost::python;
+#endif
+
using caffe::Blob;
using caffe::Caffe;
using caffe::Net;
@@ -304,7 +309,16 @@ int main(int argc, char** argv) {
// Run tool or show usage.
caffe::GlobalInit(&argc, &argv);
if (argc == 2) {
- return GetBrewFunction(caffe::string(argv[1]))();
+#ifdef WITH_PYTHON_LAYER
+ try {
+#endif
+ return GetBrewFunction(caffe::string(argv[1]))();
+#ifdef WITH_PYTHON_LAYER
+ } catch (bp::error_already_set) {
+ PyErr_Print();
+ return 1;
+ }
+#endif
} else {
gflags::ShowUsageWithFlagsRestrict(argv[0], "tools/caffe");
}