From 07dc336b96938797303fadb830e5571b41a6e831 Mon Sep 17 00:00:00 2001 From: Jon Trulson Date: Fri, 26 Dec 2014 14:24:31 -0700 Subject: [PATCH] dtsession: Coverity (memory corruption) --- cde/programs/dtsession/SmUI.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/cde/programs/dtsession/SmUI.c b/cde/programs/dtsession/SmUI.c index 278c612fe..c92ea588a 100644 --- a/cde/programs/dtsession/SmUI.c +++ b/cde/programs/dtsession/SmUI.c @@ -170,7 +170,7 @@ static Boolean saveTimeout; Widget CreateLockDialog( void ) { - int i; + int i, slen; Widget loginLabel, instructLabel, tmpLock, indFrame; Widget passwdLabel, passwdForm, picFrame, loginPic, loginFrame; Dimension width; /* width, height of login label */ @@ -279,10 +279,10 @@ CreateLockDialog( void ) */ i = 0; envLog = getenv("LOGNAME"); - lockMessage = XtMalloc(100 + strlen(envLog)); - sprintf( - lockMessage, - (char*) GETMESSAGE(18, 1, "Display locked by user %s."), envLog); + slen = 100 + strlen(envLog) + 1; + lockMessage = XtCalloc(1, slen); + snprintf(lockMessage, slen - 1, + (char*) GETMESSAGE(18, 1, "Display locked by user %s."), envLog); lockString = XmStringCreateLocalized(lockMessage); XtSetArg(uiArgs[i], XmNtopAttachment, XmATTACH_POSITION); i++; XtSetArg(uiArgs[i], XmNtopPosition, 20); i++;