diff --git a/src/domain/UBGraphicsScene.cpp b/src/domain/UBGraphicsScene.cpp
index 63efc636b7335b84955524d2aeceeaece0864202..524d70549802161f282731c369dcf18daf456fb2 100644
--- a/src/domain/UBGraphicsScene.cpp
+++ b/src/domain/UBGraphicsScene.cpp
@@ -453,7 +453,16 @@ void UBGraphicsScene::DisposeMagnifierQWidgets()
         magniferDisplayViewWidget = NULL;
     }
 
-     UBApplication::app()->restoreOverrideCursor();
+    // some time have crash here on access to app (when call from destructor when close sankore app)
+    // so i just add try/catch section here
+    try
+    {
+        UBApplication::app()->restoreOverrideCursor();
+    }
+    catch (...)
+    {
+    }
+    
 }
 
 void UBGraphicsScene::moveTo(const QPointF &pPoint)
diff --git a/src/web/UBTrapFlashController.cpp b/src/web/UBTrapFlashController.cpp
index 1e933ed2a40923bde7778bf49ac4f95f71fc2a96..9c987d40095b0400c4de31ab2e28164603738f2b 100644
--- a/src/web/UBTrapFlashController.cpp
+++ b/src/web/UBTrapFlashController.cpp
@@ -73,12 +73,50 @@ void UBTrapFlashController::showTrapFlash()
                 , viewHeight);
 
         connect(mTrapFlashUi->flashCombobox, SIGNAL(currentIndexChanged(int)), this, SLOT(selectFlash(int)));
+        connect(mTrapFlashUi->widgetNameLineEdit, SIGNAL(textChanged(const QString &)), this, SLOT(text_Changed(const QString &)));
+        connect(mTrapFlashUi->widgetNameLineEdit, SIGNAL(textEdited(const QString &)), this, SLOT(text_Edited(const QString &)));
         connect(mTrapFlashUi->createWidgetButton, SIGNAL(clicked(bool)), this, SLOT(createWidget()));
     }
 
     mTrapFlashDialog->show();
 }
 
+void UBTrapFlashController::text_Changed(const QString &newText)
+{
+    QString new_text = newText;
+
+#ifdef Q_WS_WIN // Defined on Windows.
+    QString illegalCharList("      < > : \" / \\ | ? * ");
+    QRegExp regExp("[<>:\"/\\\\|?*]");
+#endif
+
+#ifdef Q_WS_QWS // Defined on Qt for Embedded Linux.
+    QString illegalCharList("      < > : \" / \\ | ? * ");
+    QRegExp regExp("[<>:\"/\\\\|?*]");
+#endif
+
+#ifdef Q_WS_MAC // Defined on Mac OS X.
+    QString illegalCharList("      < > : \" / \\ | ? * ");
+    QRegExp regExp("[<>:\"/\\\\|?*]");
+#endif
+
+#ifdef Q_WS_X11 // Defined on X11.
+    QString illegalCharList("      < > : \" / \\ | ? * ");
+    QRegExp regExp("[<>:\"/\\\\|?*]");
+#endif
+
+    if(new_text.indexOf(regExp) > -1)
+    {
+        new_text.remove(regExp);
+        mTrapFlashUi->widgetNameLineEdit->setText(new_text);
+        QToolTip::showText(mTrapFlashUi->widgetNameLineEdit->mapToGlobal(QPoint()), "Application name can`t contain any of the following characters:\r\n"+illegalCharList);
+    }
+}
+
+void UBTrapFlashController::text_Edited(const QString &newText)
+{
+
+}
 
 void UBTrapFlashController::hideTrapFlash()
 {
diff --git a/src/web/UBTrapFlashController.h b/src/web/UBTrapFlashController.h
index 7fae4430e658fc2d81bf1ef72982dc9fe56d211d..f38a1282725f2ce9b121fe3799ba0be6d7f548a7 100644
--- a/src/web/UBTrapFlashController.h
+++ b/src/web/UBTrapFlashController.h
@@ -37,6 +37,9 @@ class UBTrapFlashController : public QObject
 
     public slots:
         void updateTrapFlashFromPage(QWebFrame* pCurrentWebFrame);
+        void text_Changed(const QString &);
+        void text_Edited(const QString &);
+
 
     private slots:
         void selectFlash(int pFlashIndex);