diff --git a/indra/llvfs/lldir_win32.cpp b/indra/llvfs/lldir_win32.cpp
index 8b1a2ddd3c52ce0fac9925d57c65d833849120b5..52d864e26f2cee313dbb98e6c3e0af98b9b1d614 100644
--- a/indra/llvfs/lldir_win32.cpp
+++ b/indra/llvfs/lldir_win32.cpp
@@ -116,10 +116,6 @@ LLDir_Win32::LLDir_Win32()
 	mExecutableDir = utf16str_to_utf8str(llutf16string(w_str));
 #endif
 
-	mAppRODataDir = ".";	
-
-	mSkinBaseDir = mAppRODataDir + mDirDelimiter + "skins";
-
 	if (mExecutableDir.find("indra") == std::string::npos)
 	{
 		// Running from installed directory.  Make sure current
@@ -129,8 +125,12 @@ LLDir_Win32::LLDir_Win32()
 		GetCurrentDirectory(MAX_PATH, w_str);
 		mWorkingDir = utf16str_to_utf8str(llutf16string(w_str));
 	}
+	mAppRODataDir = mWorkingDir;	
+
 	llinfos << "mAppRODataDir = " << mAppRODataDir << llendl;
 
+	mSkinBaseDir = mAppRODataDir + mDirDelimiter + "skins";
+
 	// Build the default cache directory
 	mDefaultCacheDir = buildSLOSCacheDir();