From e1164c87c9168508a767f2d4a4ba39f2138c2e39 Mon Sep 17 00:00:00 2001 From: Robert Johansson Date: Wed, 3 Jul 2013 22:20:44 +0900 Subject: [PATCH] error message if secondary address generation fails --- mbus/mbus-protocol-aux.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/mbus/mbus-protocol-aux.c b/mbus/mbus-protocol-aux.c index 8adc974..0987709 100755 --- a/mbus/mbus-protocol-aux.c +++ b/mbus/mbus-protocol-aux.c @@ -2079,7 +2079,7 @@ mbus_select_secondary_address(mbus_handle * handle, const char *mask) // (mask). //------------------------------------------------------------------------------ int -mbus_probe_secondary_address(mbus_handle * handle, const char *mask, char *matching_addr) +mbus_probe_secondary_address(mbus_handle *handle, const char *mask, char *matching_addr) { int ret; mbus_frame reply; @@ -2119,7 +2119,15 @@ mbus_probe_secondary_address(mbus_handle * handle, const char *mask, char *match if (mbus_frame_type(&reply) != MBUS_FRAME_TYPE_ACK) { - snprintf(matching_addr, 17, "%s", mbus_frame_get_secondary_address(&reply)); + char *addr = mbus_frame_get_secondary_address(&reply); + + if (addr == NULL) + { + // show error message, but procede with scan + MBUS_ERROR("Failed to generate secondary address from M-Bus reply frame: %s\n", mbus_error_str()); + } + + snprintf(matching_addr, 17, "%s", addr); if (_mbus_found_event) {