From ec2bba4ffe5a0939ba192b014ba594eaa964412f Mon Sep 17 00:00:00 2001
From: Rosen Penev <rosenp@gmail.com>
Date: Sun, 8 Dec 2019 15:45:19 -0800
Subject: [PATCH] idevicedate: Fix -Wformat=2 warning

Format functions expect a constant expression, not a variable.

Simplified the code slightly.
---
 tools/idevicedate.c | 17 ++++-------------
 1 file changed, 4 insertions(+), 13 deletions(-)

diff --git a/tools/idevicedate.c b/tools/idevicedate.c
index 4de90b63..6dddc185 100644
--- a/tools/idevicedate.c
+++ b/tools/idevicedate.c
@@ -38,9 +38,9 @@
 #include <libimobiledevice/lockdown.h>
 
 #ifdef _DATE_FMT
-#define DATE_FMT_LANGINFO() nl_langinfo (_DATE_FMT)
+#define DATE_FMT_LANGINFO nl_langinfo (_DATE_FMT)
 #else
-#define DATE_FMT_LANGINFO() ""
+#define DATE_FMT_LANGINFO "%a %b %e %H:%M:%S %Z %Y"
 #endif
 
 static void print_usage(int argc, char **argv)
@@ -75,7 +75,6 @@ int main(int argc, char *argv[])
 	uint64_t datetime = 0;
 	time_t rawtime;
 	struct tm * tmp;
-	char const *format = NULL;
 	char buffer[80];
 	int result = 0;
 
@@ -131,14 +130,6 @@ int main(int argc, char *argv[])
 		}
 	}
 
-	/* determine a date format */
-	if (!format) {
-		format = DATE_FMT_LANGINFO ();
-		if (!*format) {
-			format = "%a %b %e %H:%M:%S %Z %Y";
-		}
-	}
-
 	ret = idevice_new(&device, udid);
 	if (ret != IDEVICE_E_SUCCESS) {
 		if (udid) {
@@ -195,7 +186,7 @@ int main(int argc, char *argv[])
 		tmp = localtime(&rawtime);
 
 		/* finally we format and print the current date */
-		strftime(buffer, 80, format, tmp);
+		strftime(buffer, 80, DATE_FMT_LANGINFO, tmp);
 		puts(buffer);
 	} else {
 		datetime = setdate;
@@ -217,7 +208,7 @@ int main(int argc, char *argv[])
 
 		if(lockdownd_set_value(client, NULL, "TimeIntervalSince1970", node) == LOCKDOWN_E_SUCCESS) {
 			tmp = localtime(&setdate);
-			strftime(buffer, 80, format, tmp);
+			strftime(buffer, 80, DATE_FMT_LANGINFO, tmp);
 			puts(buffer);
 		} else {
 			printf("ERROR: Failed to set date on device.\n");
