Index: src/libictranslate/LanguageDialog.cpp
===================================================================
diff -u -N -r8f15ad1d2f65340f4f5a30bc95f40a12b0b7dd66 -r4572f6cddf7dab06b1de99504a6bbd3680d11e6d
--- src/libictranslate/LanguageDialog.cpp	(.../LanguageDialog.cpp)	(revision 8f15ad1d2f65340f4f5a30bc95f40a12b0b7dd66)
+++ src/libictranslate/LanguageDialog.cpp	(.../LanguageDialog.cpp)	(revision 4572f6cddf7dab06b1de99504a6bbd3680d11e6d)
@@ -572,8 +572,8 @@
 		::ReleaseDC(NULL, hdc);
 		lf.lfWeight = FW_NORMAL;
 		lf.lfCharSet = DEFAULT_CHARSET;
-		_tcscpy(lf.lfFaceName, m_prm->m_ld.GetFontFace());
-		
+		_tcsncpy_s(lf.lfFaceName, LF_FACESIZE, m_prm->m_ld.GetFontFace(), _TRUNCATE);
+
 		delete m_pFont;
 		m_pFont=new CFont();
 		m_pFont->CreateFontIndirect(&lf);
@@ -779,8 +779,7 @@
 	lf.lfHeight = -MulDiv(wPointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72);
 	lf.lfWeight = FW_NORMAL;
 	lf.lfCharSet = DEFAULT_CHARSET;
-	lstrcpyn(lf.lfFaceName, pszFacename, LF_FACESIZE);
-	lf.lfFaceName[LF_FACESIZE - 1] = _T('\0');
+	_tcsncpy_s(lf.lfFaceName, LF_FACESIZE, pszFacename, _TRUNCATE);
 
 	HFONT hNewFont = CreateFontIndirect(&lf);
 	if (hNewFont != NULL)