diff --git a/src/libtomahawk/infosystem/infoplugins/generic/echonestplugin.cpp b/src/libtomahawk/infosystem/infoplugins/generic/echonestplugin.cpp
index 6e0f4d879..dbd060364 100644
--- a/src/libtomahawk/infosystem/infoplugins/generic/echonestplugin.cpp
+++ b/src/libtomahawk/infosystem/infoplugins/generic/echonestplugin.cpp
@@ -61,7 +61,8 @@ EchoNestPlugin::namChangedSlot( QNetworkAccessManager *nam )
     currNam->setNetworkAccessible( nam->networkAccessible() );
     TomahawkUtils::NetworkProxyFactory* newProxyFactory = new TomahawkUtils::NetworkProxyFactory();
     newProxyFactory->setNoProxyHosts( oldProxyFactory->noProxyHosts() );
-    newProxyFactory->setProxy( oldProxyFactory->proxy() );
+    QNetworkProxy newProxy( oldProxyFactory->proxy() );
+    newProxyFactory->setProxy( newProxy );
     currNam->setProxyFactory( newProxyFactory );
 }
 
diff --git a/src/libtomahawk/infosystem/infoplugins/generic/lastfmplugin.cpp b/src/libtomahawk/infosystem/infoplugins/generic/lastfmplugin.cpp
index 30f0732d5..3c9875ae8 100644
--- a/src/libtomahawk/infosystem/infoplugins/generic/lastfmplugin.cpp
+++ b/src/libtomahawk/infosystem/infoplugins/generic/lastfmplugin.cpp
@@ -111,7 +111,8 @@ LastFmPlugin::namChangedSlot( QNetworkAccessManager *nam )
     currNam->setNetworkAccessible( nam->networkAccessible() );
     TomahawkUtils::NetworkProxyFactory* newProxyFactory = new TomahawkUtils::NetworkProxyFactory();
     newProxyFactory->setNoProxyHosts( oldProxyFactory->noProxyHosts() );
-    newProxyFactory->setProxy( oldProxyFactory->proxy() );
+    QNetworkProxy newProxy( oldProxyFactory->proxy() );
+    newProxyFactory->setProxy( newProxy );
     currNam->setProxyFactory( newProxyFactory );
     //FIXME: on Mac/Win as liblastfm's network access manager also sets its overriding application proxy
     //may have to do a QNetworkProxy::setApplicationProxy and clobber our own factory to override it