diff --git a/src/common/connection_handlers.py b/src/common/connection_handlers.py
index 38b5c29be5d927061f974c7fdd445513fe63f1c8..89c296adff6693b354fb9fdd31f2a2d7899e2f4c 100644
--- a/src/common/connection_handlers.py
+++ b/src/common/connection_handlers.py
@@ -1855,6 +1855,10 @@ class ConnectionHandlers(ConnectionVcard, ConnectionBytestream, ConnectionDisco,
 		if not self.connection:
 			return
 		self.connection.getRoster(self._on_roster_set)
+		self.discoverItems(gajim.config.get_per('accounts', self.name, 
+			'hostname'), id_prefix='p')
+		self.discoverInfo(gajim.config.get_per('accounts', self.name, 
+			'hostname'), id_prefix='p')
 		if gajim.config.get_per('accounts', self.name, 'use_ft_proxies'):
 			self.discover_ft_proxies()
 	
@@ -1865,10 +1869,6 @@ class ConnectionHandlers(ConnectionVcard, ConnectionBytestream, ConnectionDisco,
 			proxies = map(lambda e:e.strip(), cfg_proxies.split(','))
 			for proxy in proxies:
 				gajim.proxy65_manager.resolve(proxy, self.connection)
-			self.discoverItems(gajim.config.get_per('accounts', self.name, 
-				'hostname'), id_prefix='p')
-			self.discoverInfo(gajim.config.get_per('accounts', self.name, 
-				'hostname'), id_prefix='p')
 	
 	def _on_roster_set(self, roster):
 		raw_roster = roster.getRaw()