From fb6bec6a8f5d8cb57773e2ca1e438476fa695892 Mon Sep 17 00:00:00 2001 From: fengjiayi Date: Sun, 13 Aug 2017 15:19:40 -0700 Subject: [PATCH] Fix a bug --- paddle/framework/op_registry.h | 3 +++ paddle/framework/pybind.cc | 3 +++ 2 files changed, 6 insertions(+) diff --git a/paddle/framework/op_registry.h b/paddle/framework/op_registry.h index a561b5f48e..23f641cba2 100644 --- a/paddle/framework/op_registry.h +++ b/paddle/framework/op_registry.h @@ -222,6 +222,9 @@ class OpRegistry { varmap[var.name()] = idx++; } // ================================================ // + } else { + op_info.proto_ = nullptr; + op_info.checker_ = nullptr; } op_info_map().insert(std::make_pair(op_type, op_info)); // register gradient op diff --git a/paddle/framework/pybind.cc b/paddle/framework/pybind.cc index 3343a51c8d..56a89d87fd 100644 --- a/paddle/framework/pybind.cc +++ b/paddle/framework/pybind.cc @@ -176,6 +176,9 @@ All parameter, weight, gradient are variables in Paddle. std::vector ret_values; for (auto it = op_info_map.begin(); it != op_info_map.end(); ++it) { const OpProto *proto = it->second.proto_; + if (proto == nullptr) { + continue; + } PADDLE_ENFORCE(proto->IsInitialized(), "OpProto must all be initialized"); std::string str; PADDLE_ENFORCE(proto->SerializeToString(&str), -- GitLab