diff --git a/src/uifc/uifc32.c b/src/uifc/uifc32.c
index 450d3556bbc8ca7a9c3eb445f3e9243fcdf05ad9..32f1f54039474a9853e129a8ab7b4c3e69bfd5c7 100644
--- a/src/uifc/uifc32.c
+++ b/src/uifc/uifc32.c
@@ -545,11 +545,15 @@ static void timedisplay(BOOL force)
 	static int savemin;
 	time_t now;
 	struct tm gm;
+	int old_hold;
 
 	now=time(NULL);
 	localtime_r(&now, &gm);
 	if(force || savemin != gm.tm_min || difftime(now,savetime)>=60) {
+		old_hold=hold_update;
+		hold_update=FALSE;
 		uprintf(api->scrn_width-25,1,api->bclr|(api->cclr<<4),utimestr(&now));
+		hold_update=old_hold;
 		savetime=now;
 		savemin = gm.tm_min;
 	}