low-can: fix aborting on can_data not being an json_type_array 38/23638/1 halibut 8.0.6 halibut/8.0.6 halibut_8.0.6
authorMatt Ranostay <matt.ranostay@konsulko.com>
Thu, 23 Jan 2020 22:46:24 +0000 (14:46 -0800)
committerMatt Ranostay <matt.ranostay@konsulko.com>
Fri, 24 Jan 2020 04:18:03 +0000 (20:18 -0800)
Bug-AGL: SPEC-3129
Change-Id: I41928c5f4c467edb176ad6234c9b775e70035319
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
low-can-binding/binding/low-can-cb.cpp

index 4eac957..ac894af 100644 (file)
@@ -617,7 +617,9 @@ static void write_raw_frame(afb_req_t request, const std::string& bus_name, mess
                }
 #endif
 
-               if(message->get_length() > 0 && message->get_length() <= message->get_maxdlen())
+               if(message->get_length() > 0 &&
+                  message->get_length() <= message->get_maxdlen() &&
+                  json_object_get_type(can_data) == json_type_array)
                {
                        std::vector<uint8_t> data;
                        for (int i = 0 ; i < message->get_length() ; i++)