tdf#61076 string validation on creation of new dictionary.
Prevent having '/' or '\' within the dictionary name to prevent data loss. Change-Id: I392832c748effcdbbe58983a788ba6b38764628c Reviewed-on: https://gerrit.libreoffice.org/71059 Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> Tested-by: Jenkins
This commit is contained in:
parent
c6d27e91d9
commit
c78306fb47
2 changed files with 12 additions and 0 deletions
|
@ -258,6 +258,7 @@
|
|||
#define RID_SVXSTR_CHG_SMARTART NC_("RID_SVXSTR_CHG_SMARTART", "SmartArt to %PRODUCTNAME shapes or reverse")
|
||||
|
||||
#define RID_SVXSTR_OPT_DOUBLE_DICTS NC_("RID_SVXSTR_OPT_DOUBLE_DICTS", "The specified name already exists.\nPlease enter a new name.")
|
||||
#define RID_SVXSTR_OPT_INVALID_DICT_NAME NC_("RID_SVXSTR_OPT_INVALID_DICT_NAME", "The specified name is invalid.\nPlease enter a new name.")
|
||||
/* To translators:
|
||||
Please, try to find a similar *short* translation to avoid
|
||||
to get narrow "New" field in the "Edit custom dictionary" window,
|
||||
|
|
|
@ -132,6 +132,17 @@ IMPL_LINK_NOARG(SvxNewDictionaryDialog, OKHdl_Impl, weld::Button&, void)
|
|||
if ( sDict.equalsIgnoreAsciiCase( pDic[i]->getName()) )
|
||||
bFound = true;
|
||||
|
||||
if ( sDict.indexOf("/") != -1 || sDict.indexOf("\\") != -1 )
|
||||
{
|
||||
// Detected an invalid character.
|
||||
std::unique_ptr<weld::MessageDialog> xInfoBox(Application::CreateMessageDialog(m_xDialog.get(),
|
||||
VclMessageType::Info, VclButtonsType::Ok,
|
||||
CuiResId(RID_SVXSTR_OPT_INVALID_DICT_NAME)));
|
||||
xInfoBox->run();
|
||||
m_xNameEdit->grab_focus();
|
||||
return;
|
||||
}
|
||||
|
||||
if ( bFound )
|
||||
{
|
||||
// duplicate names?
|
||||
|
|
Loading…
Reference in a new issue