[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [kexi] src/plugins/importexport/csv: CSV import: Fix crash after canceling primary key addition on i
From: Jaroslaw Staniek <staniek () kde ! org>
Date: 2016-02-29 23:12:23
Message-ID: E1aaWzH-0000sv-0M () scm ! kde ! org
[Download RAW message or body]
Git commit 91f533ffacd7f8ad47d92753192a43ee8755658a by Jaroslaw Staniek.
Committed on 29/02/2016 at 23:07.
Pushed by staniek into branch 'master'.
CSV import: Fix crash after canceling primary key addition on import and going back
Scenario:
- Open a CSV file without primary key detected; don't set up any key
- Go to the "Name of dest table" page
- Go NEXT to the "Import" page
- Question about about adding primary key displays, click Cancel
- Click back
- Click back -> crash
(from calligra.git)
M +3 -2 src/plugins/importexport/csv/kexicsvimportdialog.cpp
M +4 -2 src/plugins/importexport/csv/kexicsvimportdialog.h
http://commits.kde.org/kexi/91f533ffacd7f8ad47d92753192a43ee8755658a
diff --git a/src/plugins/importexport/csv/kexicsvimportdialog.cpp \
b/src/plugins/importexport/csv/kexicsvimportdialog.cpp index 4384dd7..b158786 100644
--- a/src/plugins/importexport/csv/kexicsvimportdialog.cpp
+++ b/src/plugins/importexport/csv/kexicsvimportdialog.cpp
@@ -1775,7 +1775,7 @@ void KexiCSVImportDialog::currentCellChanged(const QModelIndex \
&cur, const QMode }
//! Used in emergency by accept()
-void KexiCSVImportDialog::dropDestinationTable(KexiProject* project, KexiPart::Item* \
partItemForSavedTable) +void KexiCSVImportDialog::dropDestinationTable(KexiProject* \
project, KexiPart::Item* &partItemForSavedTable) {
m_importingProgressBar->hide();
project->deleteUnstoredItem(partItemForSavedTable);
@@ -1786,11 +1786,12 @@ void KexiCSVImportDialog::dropDestinationTable(KexiProject* \
project, KexiPart::I }
//! Used in emergency by accept()
-void KexiCSVImportDialog::raiseErrorInAccept(KexiProject* project, KexiPart::Item* \
partItemForSavedTable) +void KexiCSVImportDialog::raiseErrorInAccept(KexiProject* \
project, KexiPart::Item* &partItemForSavedTable) {
finishButton()->setEnabled(true);
KGuiItem::assign(finishButton(), KGuiItem(xi18nc("@action:button Import CSV", \
"&Import..."), _IMPORT_ICON)); project->deleteUnstoredItem(partItemForSavedTable);
+ partItemForSavedTable = 0;
delete m_destinationTableSchema;
m_destinationTableSchema = 0;
m_conn = 0;
diff --git a/src/plugins/importexport/csv/kexicsvimportdialog.h \
b/src/plugins/importexport/csv/kexicsvimportdialog.h index 62760cf..01b5802 100644
--- a/src/plugins/importexport/csv/kexicsvimportdialog.h
+++ b/src/plugins/importexport/csv/kexicsvimportdialog.h
@@ -112,10 +112,12 @@ protected:
private:
//! Used in emergency by accept()
- void dropDestinationTable(KexiProject* project, KexiPart::Item* \
partItemForSavedTable); + //! @note @a partItemForSavedTable is IN-OUT
+ void dropDestinationTable(KexiProject* project, KexiPart::Item* \
&partItemForSavedTable);
//! Used in emergency by accept()
- void raiseErrorInAccept(KexiProject* project, KexiPart::Item* \
partItemForSavedTable); + //! @note @a partItemForSavedTable is IN-OUT
+ void raiseErrorInAccept(KexiProject* project, KexiPart::Item* \
&partItemForSavedTable);
QGridLayout* MyDialogLayout;
QHBoxLayout* Layout1;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic