diff --git a/indra/newview/llpanellogin.cpp b/indra/newview/llpanellogin.cpp index 15c1f93c8..6e4df851f 100644 --- a/indra/newview/llpanellogin.cpp +++ b/indra/newview/llpanellogin.cpp @@ -1185,21 +1185,35 @@ void LLPanelLogin::onClickConnect(void *) { // save identity settings for login bool specify_mac = sInstance->getChild("mac_check")->getValue(); - bool specify_id0 = sInstance->getChild("id0_check")->getValue(); + bool specify_id0 = sInstance->getChild("id0_check")->getValue(); + gSavedSettings.setBOOL("SpecifyMAC", specify_mac); gSavedSettings.setBOOL("SpecifyID0", specify_id0); + if(specify_mac) { std::string specified_mac = sInstance->getChild("mac_edit")->getText(); gSavedSettings.setString("SpecifiedMAC", specified_mac); } + if(specify_id0) { std::string specified_id0 = sInstance->getChild("id0_edit")->getText(); gSavedSettings.setString("SpecifiedID0", specified_id0); } + std::string specified_channel = sInstance->getChild("channel_edit")->getText(); - gSavedSettings.setString("SpecifiedChannel", specified_channel); + gSavedSettings.setString("SpecifiedChannel", specified_channel); + + U32 specified_ver_maj = (U32)sInstance->getChild("vermaj_spin")->getValue(); + gSavedSettings.setU32("SpecifiedVersionMaj", specified_ver_maj); + U32 specified_ver_min = (U32)sInstance->getChild("vermin_spin")->getValue(); + gSavedSettings.setU32("SpecifiedVersionMin", specified_ver_min); + U32 specified_ver_patch = (U32)sInstance->getChild("verpatch_spin")->getValue(); + gSavedSettings.setU32("SpecifiedVersionPatch", specified_ver_patch); + U32 specified_ver_build = (U32)sInstance->getChild("verbuild_spin")->getValue(); + gSavedSettings.setU32("SpecifiedVersionBuild", specified_ver_build); + // // tell the responder we're not here anymore if ( gResponsePtr )