From 12108bf6e9dc16b6b4b1fe344c1b12ed31a1e4b4 Mon Sep 17 00:00:00 2001 From: BlueWall Date: Sun, 23 Nov 2014 14:25:48 -0500 Subject: Fix handling of user preference updates where no email address is supplied --- OpenSim/Data/MySQL/MySQLUserProfilesData.cs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'OpenSim/Data/MySQL/MySQLUserProfilesData.cs') diff --git a/OpenSim/Data/MySQL/MySQLUserProfilesData.cs b/OpenSim/Data/MySQL/MySQLUserProfilesData.cs index cab0ca8..da05ff0 100644 --- a/OpenSim/Data/MySQL/MySQLUserProfilesData.cs +++ b/OpenSim/Data/MySQL/MySQLUserProfilesData.cs @@ -915,7 +915,10 @@ namespace OpenSim.Data.MySQL reader.Read(); bool.TryParse((string)reader["imviaemail"], out pref.IMViaEmail); bool.TryParse((string)reader["visible"], out pref.Visible); - pref.EMail = (string)reader["email"]; + pref.EMail = (string)reader["email"]; + + if(string.IsNullOrEmpty(pref.EMail)) + pref.EMail = "No EMail Address Provided"; } else { @@ -954,7 +957,8 @@ namespace OpenSim.Data.MySQL query += "UPDATE usersettings SET "; query += "imviaemail=?ImViaEmail, "; - query += "visible=?Visible "; + query += "visible=?Visible, "; + query += "email=?EMail "; query += "WHERE useruuid=?uuid"; try @@ -966,7 +970,8 @@ namespace OpenSim.Data.MySQL { cmd.Parameters.AddWithValue("?ImViaEmail", pref.IMViaEmail.ToString().ToLower()); cmd.Parameters.AddWithValue("?Visible", pref.Visible.ToString().ToLower()); - cmd.Parameters.AddWithValue("?uuid", pref.UserId.ToString()); + cmd.Parameters.AddWithValue("?uuid", pref.UserId.ToString()); + cmd.Parameters.AddWithValue("?EMail", pref.EMail.ToString().ToLower()); cmd.ExecuteNonQuery(); } @@ -975,7 +980,7 @@ namespace OpenSim.Data.MySQL catch (Exception e) { m_log.ErrorFormat("[PROFILES_DATA]" + - ": AgentInterestsUpdate exception {0}", e.Message); + ": UserPreferencesUpdate exception {0} {1}", e.Message, e.InnerException); result = e.Message; return false; } -- cgit v1.1