diff --git a/indra/newview/llfloatermarketplacelistings.cpp b/indra/newview/llfloatermarketplacelistings.cpp
index 9acacbe6743548eccd2eab4eb6ffc992837b61ea..00fd87fece8a5d61d0b0a9c6eccb5b5420293e06 100755
--- a/indra/newview/llfloatermarketplacelistings.cpp
+++ b/indra/newview/llfloatermarketplacelistings.cpp
@@ -265,7 +265,7 @@ LLFloaterMarketplaceListings::LLFloaterMarketplaceListings(const LLSD& key)
 , mInventoryText(NULL)
 , mInventoryTitle(NULL)
 , mPanelListings(NULL)
-, mFirstViewListings(true)
+, mPanelListingsSet(false)
 {
 }
 
@@ -401,6 +401,9 @@ void LLFloaterMarketplaceListings::setPanels()
 	
 	// Get the content of the marketplace listings folder
 	fetchContents();
+    
+    // Flag that this is done
+    mPanelListingsSet = true;
 }
 
 void LLFloaterMarketplaceListings::initializeMarketPlace()
@@ -454,11 +457,10 @@ void LLFloaterMarketplaceListings::updateView()
     // Update the middle portion : tabs or messages
 	if (getFolderCount() > 0)
 	{
-        if (mFirstViewListings)
+        if (!mPanelListingsSet)
         {
             // We need to rebuild the tabs cleanly the first time we make them visible
             setPanels();
-            mFirstViewListings = false;
         }
 		mPanelListings->setVisible(TRUE);
 		mInventoryPlaceholder->setVisible(FALSE);
@@ -538,6 +540,10 @@ BOOL LLFloaterMarketplaceListings::handleDragAndDrop(S32 x, S32 y, MASK mask, BO
     {
         if (!mPanelListings->getVisible() && mRootFolderId.notNull())
         {
+            if (!mPanelListingsSet)
+            {
+                setPanels();
+            }
             LLFolderView* root_folder = mPanelListings->getRootFolder();
             handled = root_folder->handleDragAndDropToThisFolder(mask, drop, cargo_type, cargo_data, accept, tooltip_msg);
         }
diff --git a/indra/newview/llfloatermarketplacelistings.h b/indra/newview/llfloatermarketplacelistings.h
index 9fddbc645e831979ac7f6193f1aeee107d4136f7..8a9731dafcff7aa7faa4e4a1be920279c7a49c0f 100755
--- a/indra/newview/llfloatermarketplacelistings.h
+++ b/indra/newview/llfloatermarketplacelistings.h
@@ -132,7 +132,7 @@ class LLFloaterMarketplaceListings : public LLFloater
 
 	LLUUID			mRootFolderId;
 	LLPanelMarketplaceListings * mPanelListings;
-    bool            mFirstViewListings;
+    bool            mPanelListingsSet;
 };
 
 //-----------------------------------------------------------------------------