(for B5) Fix for EXT-5823 "Include language in user-agent string" (implemented via JavaScript - not in ua string)

(for B5) Fix for EXT-5314 "Inworld Browser blanks out at credit card entry"
Note: also includes an update to install.xml that points to a new version of LLQtWebKit that is required for these fixes
master
Callum Prentice 2010-03-12 14:34:25 -08:00
parent 6079a50186
commit d5e685306c
8 changed files with 24 additions and 8 deletions

View File

@ -65,7 +65,7 @@ LLPluginClassMedia::~LLPluginClassMedia()
reset();
}
bool LLPluginClassMedia::init(const std::string &launcher_filename, const std::string &plugin_filename, bool debug, const std::string &user_data_path)
bool LLPluginClassMedia::init(const std::string &launcher_filename, const std::string &plugin_filename, bool debug, const std::string &user_data_path, const std::string &language_code)
{
LL_DEBUGS("Plugin") << "launcher: " << launcher_filename << LL_ENDL;
LL_DEBUGS("Plugin") << "plugin: " << plugin_filename << LL_ENDL;
@ -73,7 +73,7 @@ bool LLPluginClassMedia::init(const std::string &launcher_filename, const std::s
mPlugin = new LLPluginProcessParent(this);
mPlugin->setSleepTime(mSleepTime);
mPlugin->init(launcher_filename, plugin_filename, debug, user_data_path);
mPlugin->init(launcher_filename, plugin_filename, debug, user_data_path,language_code);
return true;
}

View File

@ -49,7 +49,11 @@ public:
virtual ~LLPluginClassMedia();
// local initialization, called by the media manager when creating a source
virtual bool init(const std::string &launcher_filename, const std::string &plugin_filename, bool debug, const std::string &user_data_path);
virtual bool init(const std::string &launcher_filename,
const std::string &plugin_filename,
bool debug,
const std::string &user_data_path,
const std::string &language_code);
// undoes everything init() didm called by the media manager when destroying a source
virtual void reset();

View File

@ -156,6 +156,7 @@ void LLPluginProcessChild::idle(void)
setState(STATE_PLUGIN_INITIALIZING);
LLPluginMessage message("base", "init");
message.setValue("user_data_path", mUserDataPath);
message.setValue("language_code", mLanguageCode);
sendMessageToPlugin(message);
}
break;
@ -329,6 +330,7 @@ void LLPluginProcessChild::receiveMessageRaw(const std::string &message)
{
mPluginFile = parsed.getValue("file");
mUserDataPath = parsed.getValue("user_data_path");
mLanguageCode = parsed.getValue("language_code");
}
else if(message_name == "shm_add")
{

View File

@ -99,6 +99,7 @@ private:
std::string mPluginFile;
std::string mUserDataPath;
std::string mLanguageCode;
LLPluginInstance *mInstance;

View File

@ -98,13 +98,14 @@ void LLPluginProcessParent::errorState(void)
setState(STATE_ERROR);
}
void LLPluginProcessParent::init(const std::string &launcher_filename, const std::string &plugin_filename, bool debug, const std::string &user_data_path)
void LLPluginProcessParent::init(const std::string &launcher_filename, const std::string &plugin_filename, bool debug, const std::string &user_data_path, const std::string &language_code)
{
mProcess.setExecutable(launcher_filename);
mPluginFile = plugin_filename;
mCPUUsage = 0.0f;
mDebug = debug;
mUserDataPath = user_data_path;
mLanguageCode = language_code;
setState(STATE_INITIALIZED);
}
@ -363,6 +364,7 @@ void LLPluginProcessParent::idle(void)
LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_INTERNAL, "load_plugin");
message.setValue("file", mPluginFile);
message.setValue("user_data_path", mUserDataPath);
message.setValue("language_code", mLanguageCode);
sendMessage(message);
}

View File

@ -59,7 +59,12 @@ public:
LLPluginProcessParent(LLPluginProcessParentOwner *owner);
~LLPluginProcessParent();
void init(const std::string &launcher_filename, const std::string &plugin_filename, bool debug, const std::string &user_data_path);
void init(const std::string &launcher_filename,
const std::string &plugin_filename,
bool debug,
const std::string &user_data_path,
const std::string &language_code);
void idle(void);
// returns true if the plugin is on its way to steady state
@ -144,6 +149,7 @@ private:
std::string mPluginFile;
std::string mUserDataPath;
std::string mLanguageCode;
LLPluginProcessParentOwner *mOwner;

View File

@ -1258,7 +1258,8 @@ LLPluginClassMedia* LLViewerMediaImpl::newSourceFromMediaType(std::string media_
{
LLPluginClassMedia* media_source = new LLPluginClassMedia(owner);
media_source->setSize(default_width, default_height);
if (media_source->init(launcher_name, plugin_name, gSavedSettings.getBOOL("PluginAttachDebuggerToPlugins"), user_data_path))
std::string language_code = LLUI::getLanguage();
if (media_source->init(launcher_name, plugin_name, gSavedSettings.getBOOL("PluginAttachDebuggerToPlugins"), user_data_path, language_code))
{
return media_source;
}

View File

@ -962,9 +962,9 @@ anguage Infrstructure (CLI) international standard</string>
<key>windows</key>
<map>
<key>md5sum</key>
<string>1e9798dc424a6f6c2bea50649bbcc7ae</string>
<string>ee5d242ea468ba9a82d2bf8581aa308d</string>
<key>url</key>
<uri>http://viewer-source-downloads.s3.amazonaws.com/install_pkgs/llqtwebkit-windows-qt4.6-20100210.tar.bz2</uri>
<uri>http://viewer-source-downloads.s3.amazonaws.com/install_pkgs/llqtwebkit-windows-qt4.6-20100312.tar.bz2</uri>
</map>
</map>
</map>