diff --git a/tools/firmware-utils/Makefile b/tools/firmware-utils/Makefile
index ca41387b5eb8e2407ca1fa7f01903f518f53e7e0..f3fefa329ac969c4b4f7a80f5943a824c260e81a 100644
--- a/tools/firmware-utils/Makefile
+++ b/tools/firmware-utils/Makefile
@@ -42,7 +42,7 @@ define Host/Compile
 	$(call cc,mkplanexfw sha1)
 	$(call cc,mktplinkfw mktplinkfw-lib md5, -Wall -fgnu89-inline)
 	$(call cc,mktplinkfw2 mktplinkfw-lib md5, -fgnu89-inline)
-	$(call cc,tplink-safeloader md5, -Wall)
+	$(call cc,tplink-safeloader md5, -Wall --std=gnu99)
 	$(call cc,pc1crypt)
 	$(call cc,osbridge-crc)
 	$(call cc,wrt400n cyg_crc32)
diff --git a/tools/firmware-utils/src/tplink-safeloader.c b/tools/firmware-utils/src/tplink-safeloader.c
index 3c979f7f86d385ffd2bca5d4cf7f87001815cc89..eb99241136b2f1c82d0e8ae43f7f66f768c18098 100644
--- a/tools/firmware-utils/src/tplink-safeloader.c
+++ b/tools/firmware-utils/src/tplink-safeloader.c
@@ -1417,8 +1417,9 @@ static int add_flash_partition(
 		unsigned long base,
 		unsigned long size)
 {
+	int ptr;
 	/* check if the list has a free entry */
-	for (int ptr=0; ptr<max_entries; ptr++, part_list++) {
+	for (ptr = 0; ptr < max_entries; ptr++, part_list++) {
 		if (part_list->name == NULL &&
 				part_list->base == 0 &&
 				part_list->size == 0)
@@ -1494,7 +1495,7 @@ static int read_partition_table(
 			break;
 		}
 
-		for (int i=0; i<=4; i++) {
+		for (int i = 0; i <= 4; i++) {
 			if (end_part <= ptr)
 				break;
 
@@ -1620,7 +1621,7 @@ static int extract_firmware(const char *input, const char *output_directory)
 		error(1, 0, "Error can not read the partition table (fwup-ptn)");
 	}
 
-	for (int i=0; i<max_entries; i++) {
+	for (int i = 0; i < max_entries; i++) {
 		if (entries[i].name == NULL &&
 				entries[i].base == 0 &&
 				entries[i].size == 0)
@@ -1636,7 +1637,7 @@ static struct flash_partition_entry *find_partition(
 		struct flash_partition_entry *entries, size_t max_entries,
 		const char *name, const char *error_msg)
 {
-	for (int i=0; i<max_entries; i++, entries++) {
+	for (int i = 0; i < max_entries; i++, entries++) {
 		if (strcmp(entries->name, name) == 0)
 			return entries;
 	}