diff --git a/indra/newview/llviewerhelp.cpp b/indra/newview/llviewerhelp.cpp
index 5af79b4fd32a3f40224534b57acd85109f591c05..7c491ad1541351d07e41bf767e1eea862bc6dada 100644
--- a/indra/newview/llviewerhelp.cpp
+++ b/indra/newview/llviewerhelp.cpp
@@ -65,18 +65,16 @@ void LLViewerHelp::showTopic(const std::string &topic)
 		help_topic = defaultTopic();
 	}
 
-	// f1 help topic means: if user not logged in yet, show the
-	// pre-login topic, otherwise show help for the focused item
+	// f1 help topic means: if the user is not logged in yet, show
+	// the pre-login topic instead of the default fallback topic,
+	// otherwise show help for the focused item
 	if (help_topic == f1HelpTopic())
 	{
-		if (! LLLoginInstance::getInstance()->authSuccess())
+		help_topic = getTopicFromFocus();
+		if (help_topic == defaultTopic() && ! LLLoginInstance::getInstance()->authSuccess())
 		{
 			help_topic = preLoginTopic();
 		}
-		else
-		{
-			help_topic = getTopicFromFocus();
-		}
 	}
 
 	// work out the URL for this topic and display it