From 6907cd0e28207d4d162723d8ed5629e1805f9aeb Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Fri, 25 Mar 2022 13:39:18 +0100 Subject: [PATCH] remove/take fixed --- src/graphic/QskGraphicProviderMap.cpp | 13 +++++-------- src/graphic/QskGraphicProviderMap.h | 2 +- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/graphic/QskGraphicProviderMap.cpp b/src/graphic/QskGraphicProviderMap.cpp index bdd37f92..78e6fcae 100644 --- a/src/graphic/QskGraphicProviderMap.cpp +++ b/src/graphic/QskGraphicProviderMap.cpp @@ -48,11 +48,7 @@ void QskGraphicProviderMap::insert( void QskGraphicProviderMap::remove( const QString& providerId ) { - const auto it = m_data->hashTab.constFind( qskKey( providerId ) ); - if ( it == m_data->hashTab.constEnd() ) - delete it.value(); - - m_data->hashTab.erase( it ); + delete take( providerId ); } QskGraphicProvider* QskGraphicProviderMap::take( const QString& providerId ) @@ -60,10 +56,11 @@ QskGraphicProvider* QskGraphicProviderMap::take( const QString& providerId ) QskGraphicProvider* provider = nullptr; const auto it = m_data->hashTab.constFind( qskKey( providerId ) ); - if ( it == m_data->hashTab.constEnd() ) + if ( it != m_data->hashTab.constEnd() ) + { provider = it.value(); - - m_data->hashTab.erase( it ); + m_data->hashTab.erase( it ); + } return provider; } diff --git a/src/graphic/QskGraphicProviderMap.h b/src/graphic/QskGraphicProviderMap.h index 119dab2c..607217cf 100644 --- a/src/graphic/QskGraphicProviderMap.h +++ b/src/graphic/QskGraphicProviderMap.h @@ -12,7 +12,7 @@ class QskGraphicProvider; class QString; -class QSK_EXPORT QskGraphicProviderMap +class QskGraphicProviderMap { public: QskGraphicProviderMap();