diff options
Diffstat (limited to 'indra/newview/llviewermedia.cpp')
-rw-r--r-- | indra/newview/llviewermedia.cpp | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index 7e08464cd0..85efe2724e 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -701,9 +701,9 @@ void LLViewerMedia::updateMedia(void *dummy_arg) impl_list::iterator iter = sViewerMediaImplList.begin(); impl_list::iterator end = sViewerMediaImplList.end(); - for(; iter != end; iter++) + for(; iter != end;) { - LLViewerMediaImpl* pimpl = *iter; + LLViewerMediaImpl* pimpl = *iter++; pimpl->update(); pimpl->calculateInterest(); } @@ -852,7 +852,7 @@ void LLViewerMedia::updateMedia(void *dummy_arg) } } // update the audio stream here as well - if(!inworld_media_enabled || !inworld_audio_enabled) + if( !inworld_audio_enabled) { if(LLViewerMedia::isParcelAudioPlaying() && gAudiop && LLViewerMedia::hasParcelAudio()) { @@ -1231,6 +1231,19 @@ LLPluginClassMedia* LLViewerMediaImpl::newSourceFromMediaType(std::string media_ std::string user_data_path = gDirUtilp->getOSUserAppDir(); user_data_path += gDirUtilp->getDirDelimiter(); + // Fix for EXT-5960 - make browser profile specific to user (cache, cookies etc.) + // If the linden username returned is blank, that can only mean we are + // at the login page displaying login Web page or Web browser test via Develop menu. + // In this case we just use whatever gDirUtilp->getOSUserAppDir() gives us (this + // is what we always used before this change) + std::string linden_user_dir = gDirUtilp->getLindenUserDir(); + if ( ! linden_user_dir.empty() ) + { + // gDirUtilp->getLindenUserDir() is whole path, not just Linden name + user_data_path = linden_user_dir; + user_data_path += gDirUtilp->getDirDelimiter(); + }; + // See if the plugin executable exists llstat s; if(LLFile::stat(launcher_name, &s)) |