diff --git a/sickbeard/providers/__init__.py b/sickbeard/providers/__init__.py
index 30ea49029d6d904aac1f27d5e650e5a397de12f5..7f01e092f6f76a472ba69270011663951770b36e 100644
--- a/sickbeard/providers/__init__.py
+++ b/sickbeard/providers/__init__.py
@@ -63,6 +63,11 @@ def getNewznabProviderList(data):
         if not curDefault:
             continue
 
+        # a 0 in the key spot indicates that no key is needed, so set this on the object
+        if curDefault.key == '0':
+            curDefault.key = ''
+            curDefault.needs_auth = False
+
         if curDefault.name not in providerDict:
             curDefault.default = True
             providerList.append(curDefault)
@@ -70,12 +75,8 @@ def getNewznabProviderList(data):
             providerDict[curDefault.name].default = True
             providerDict[curDefault.name].name = curDefault.name
             providerDict[curDefault.name].url = curDefault.url
+            providerDict[curDefault.name].needs_auth = curDefault.needs_auth
         
-        # a 0 in the key spot indicates that no key is needed, so set this on the object
-        if curDefault.key == '0':
-            curDefault.key = ''
-            curDefault.needs_auth = False
-
     return filter(lambda x: x, providerList)