diff --git a/apps/app_meetme.c b/apps/app_meetme.c
index c6ba632a440bc20dbeed38ed1e44f38202f6cfb4..5107b7f8291df81a3e286cf7c03573ffd3fb5e27 100644
--- a/apps/app_meetme.c
+++ b/apps/app_meetme.c
@@ -2738,13 +2738,19 @@ static struct ast_conference *find_conf_realtime(struct ast_channel *chan, char
 			} else if (!strcasecmp(var->name, "adminopts")) {
 				ast_copy_string(adminopts, var->value, sizeof(adminopts));
 			} else if (!strcasecmp(var->name, "endtime")) {
-				struct ast_tm tm = { 0, };
-				strptime(var->value, "%Y-%m-%d %H:%M:%S", (struct tm *)&tm);
-				endtime = ast_mktime(&tm, NULL);
+				union {
+					struct ast_tm atm;
+					struct tm tm;
+				} t = { { 0, }, };
+				strptime(var->value, "%Y-%m-%d %H:%M:%S", &t.tm);
+				endtime = ast_mktime(&t.atm, NULL);
 			} else if (!strcasecmp(var->name, "starttime")) {
-				struct ast_tm tm = { 0, };
-				strptime(var->value, "%Y-%m-%d %H:%M:%S", (struct tm *)&tm);
-				starttime = ast_mktime(&tm, NULL);
+				union {
+					struct ast_tm atm;
+					struct tm tm;
+				} t = { { 0, }, };
+				strptime(var->value, "%Y-%m-%d %H:%M:%S", &t.tm);
+				starttime = ast_mktime(&t.atm, NULL);
 			}
 
 			var = var->next;