Skip to content

Commit

Permalink
fix crash on close (fixes #12822)
Browse files Browse the repository at this point in the history
  • Loading branch information
jef-n committed May 26, 2015
1 parent 9a5e8d9 commit 598563c
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 9 deletions.
17 changes: 10 additions & 7 deletions src/providers/grass/qgsgrassprovidermodule.cpp
Expand Up @@ -710,8 +710,8 @@ QIcon QgsGrassGroupItem::icon()
}

//----------------------- QgsGrassImportItem ------------------------------
QgsGrassImportItemIcon::QgsGrassImportItemIcon()
: QObject()
QgsGrassImportItemIcon::QgsGrassImportItemIcon( QObject *parent )
: QObject( parent )
, mCount( 0 )
, mMovie( 0 )
{
Expand Down Expand Up @@ -741,7 +741,7 @@ void QgsGrassImportItemIcon::removeListener()

//----------------------- QgsGrassImportItem ------------------------------

QgsGrassImportItemIcon QgsGrassImportItem::mImportIcon;
QgsGrassImportItemIcon *QgsGrassImportItem::mImportIcon = 0;

QgsGrassImportItem::QgsGrassImportItem( QgsDataItem* parent, const QString& name, const QString& path, QgsGrassImport* import )
: QgsDataItem( QgsDataItem::Layer, parent, name, path )
Expand All @@ -751,13 +751,16 @@ QgsGrassImportItem::QgsGrassImportItem( QgsDataItem* parent, const QString& name
setCapabilities( QgsDataItem::NoCapabilities ); // disable fertility
setState( Populating );

connect( &mImportIcon, SIGNAL( frameChanged( int ) ), SLOT( emitDataChanged() ) );
mImportIcon.addListener();
if ( !mImportIcon )
mImportIcon = new QgsGrassImportItemIcon( import );

connect( mImportIcon, SIGNAL( frameChanged( int ) ), SLOT( emitDataChanged() ) );
mImportIcon->addListener();
}

QgsGrassImportItem::~QgsGrassImportItem()
{
mImportIcon.removeListener();
mImportIcon->removeListener();
}

QList<QAction*> QgsGrassImportItem::actions()
Expand All @@ -783,7 +786,7 @@ void QgsGrassImportItem::cancel()

QIcon QgsGrassImportItem::icon()
{
return mImportIcon.icon();
return mImportIcon->icon();
}

//-------------------------------------------------------------------------
Expand Down
4 changes: 2 additions & 2 deletions src/providers/grass/qgsgrassprovidermodule.h
Expand Up @@ -174,7 +174,7 @@ class QgsGrassImportItemIcon : public QObject
{
Q_OBJECT
public:
QgsGrassImportItemIcon();
QgsGrassImportItemIcon( QObject *parent );

QIcon icon() { return mIcon; }
void addListener();
Expand Down Expand Up @@ -217,7 +217,7 @@ class QgsGrassImportItem : public QgsDataItem, public QgsGrassObjectItemBase
QgsGrassImport* mImport;

private:
static QgsGrassImportItemIcon mImportIcon;
static QgsGrassImportItemIcon *mImportIcon;
};

#endif // QGSGRASSPROVIDERMODULE_H

1 comment on commit 598563c

@blazek
Copy link
Member

@blazek blazek commented on 598563c May 27, 2015

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks and sorry.

Please sign in to comment.