diff --git a/src/core/cntlr_map_debug.c b/src/core/cntlr_map_debug.c
index e82d356820ab244d4d923f8cb05b4541c81172f4..5f018ace88026e1b881f47003da3b49ee478bc6e 100644
--- a/src/core/cntlr_map_debug.c
+++ b/src/core/cntlr_map_debug.c
@@ -93,7 +93,9 @@ struct tlv_ap_oper_bss {
 		*/
 		struct tlv_ap_oper_bss *tlv = (struct tlv_ap_oper_bss *)tv[1][0]->data;
 		uint8_t *data = (uint8_t *) tlv + 1;
-		int i;
+		int i, offset = 0;
+
+		offset += 1;
 
 		trace("TLV: %s\n", map_stringify_tlv_type(tv[1][0]->type));
 
@@ -103,11 +105,11 @@ struct tlv_ap_oper_bss {
 			int j;
 
 			trace("\t\tradio_id: " MACFMT "\n",
-				MAC2STR(data));
-			data += 6;
+				MAC2STR(&tlv[offset]));
+			offset += 6;
 
-			num_bss = *data;
-			data += 1;
+			memcpy(&num_bss, &tlv[offset], 1);
+			offset += 1;
 
 			trace("\t\tbss_nr: %d\n",
 				num_bss);
@@ -115,18 +117,18 @@ struct tlv_ap_oper_bss {
 				uint8_t ssidlen = 0;
 
 				trace("\t\t\tbssid: " MACFMT "\n",
-					MAC2STR(data));
-				data += 6;
+					MAC2STR(&tlv[offset]));
+				offset += 6;
 
-				ssidlen = *data;
+				memcpy(&ssidlen, &tlv[offset], 1);
 				trace("\t\t\tssid_len: %d\n",
 					ssidlen);
-				data += 1;
+				offset += 1;
 
 				trace("\t\t\tssid: %.*s\n",
 					ssidlen,
-					data);
-				data += ssidlen;
+					&tlv[offset]);
+				offset += ssidlen;
 			}
 		}
 	}
@@ -146,8 +148,9 @@ struct tlv_assoc_client {
 } __attribute__((packed));
 */
 		struct tlv_assoc_client *tlv = (struct tlv_assoc_client *)tv[2][0]->data;
-		uint8_t *data = (uint8_t *) tlv + 1;
-		int i;
+		int i, offset = 0;
+
+		offset += 1;
 
 		trace("TLV: %s\n", map_stringify_tlv_type(tv[2][0]->type));
 
@@ -158,22 +161,22 @@ struct tlv_assoc_client {
 			int j;
 
 			trace("\t\tbssid: " MACFMT "\n",
-				MAC2STR(data));
-			data += 6;
+				MAC2STR(&tlv[offset]));
+			offset += 6;
 
-			num_client = BUF_GET_BE16(data);
-			data += 2;
+			num_client = BUF_GET_BE16(tlv[offset]);
+			offset += 2;
 
 			trace("\t\tassoc_clients_nr: %u\n", num_client);
 			for (j = 0; j < num_client; j++) {
 				uint16_t conntime = 0;
 
 				trace("\t\t\tclient_addr: " MACFMT "\n",
-					MAC2STR(data));
-				data += 6;
+					MAC2STR(&tlv[offset]));
+				offset += 6;
 
-				conntime = BUF_GET_BE16(data);
-				data += 2;
+				conntime = BUF_GET_BE16(tlv[offset]);
+				offset += 2;
 				trace("\t\t\tuptime: 0x%04x\n", conntime);
 			}
 		}