From ac853fddb9a8cb1879bbbfb515562010047916ea Mon Sep 17 00:00:00 2001 From: yaoweifeng01 Date: Mon, 25 Mar 2019 12:41:48 +0800 Subject: [PATCH] cyber: fix py_server dereferenceAfterCheck --- cyber/python/examples/py_service.cc | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/cyber/python/examples/py_service.cc b/cyber/python/examples/py_service.cc index 17643a1dbf..fa9302699c 100644 --- a/cyber/python/examples/py_service.cc +++ b/cyber/python/examples/py_service.cc @@ -30,15 +30,18 @@ using apollo::cyber::proto::Chatter; using apollo::cyber::message::PyMessageWrap; apollo::cyber::PyService *server = nullptr; int service_callback(const char *channel_name) { - AINFO << "server recv->[ " << channel_name << " ]"; - - if (server) { - Chatter chat; - std::string res = server->read(); - chat.ParseFromString(res); - AINFO << "server read: responese: " << chat.ShortDebugString(); + if (server == nullptr) { + AERROR << "server is null."; + return -1; } + AINFO << "server recv channelname ->[ " << channel_name << " ]"; + + Chatter chat; + std::string res = server->read(); + chat.ParseFromString(res); + AINFO << "server read: responese: " << chat.ShortDebugString(); + Chatter driver_msg; static uint64_t id = 0; ++id; @@ -47,7 +50,7 @@ int service_callback(const char *channel_name) { std::string org_data; driver_msg.SerializeToString(&org_data); server->write(org_data); - return -1; + return 1; } int main(int argc, char *argv[]) { -- GitLab