From: Spencer Oliver Date: Fri, 2 Aug 2013 11:57:30 +0000 (+0100) Subject: target: check target supports target_request_data X-Git-Tag: v0.8.0-rc1~299 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=854a11422124bd1a417729f0cbfd40737a06d164;p=openocd target: check target supports target_request_data Make sure the target support target requests before we enable any receivers. Change-Id: I8ce42922eaff76fb5e7a114da716f2a6585a6ab5 Signed-off-by: Spencer Oliver Reviewed-on: http://openocd.zylin.com/1536 Tested-by: jenkins Reviewed-by: Andreas Fritiofson --- diff --git a/src/target/target_request.c b/src/target/target_request.c index 2b09df66..df2fc34e 100644 --- a/src/target/target_request.c +++ b/src/target/target_request.c @@ -122,6 +122,8 @@ int target_request(struct target *target, uint32_t request) { target_req_cmd_t target_req_cmd = request & 0xff; + assert(target->type->target_request_data); + /* Record that we got a target message for back-off algorithm */ got_message = true; @@ -256,6 +258,11 @@ COMMAND_HANDLER(handle_target_request_debugmsgs_command) int receiving = 0; + if (target->type->target_request_data == NULL) { + LOG_ERROR("Target %s does not support target requests", target_name(target)); + return ERROR_OK; + } + /* see if reciever is already registered */ if (find_debug_msg_receiver(CMD_CTX, target) != NULL) receiving = 1;