diff options
Diffstat (limited to 'OpenSim/Framework/Data.SQLite')
-rw-r--r-- | OpenSim/Framework/Data.SQLite/SQLiteUserData.cs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/OpenSim/Framework/Data.SQLite/SQLiteUserData.cs b/OpenSim/Framework/Data.SQLite/SQLiteUserData.cs index cbbb349..f1f76c4 100644 --- a/OpenSim/Framework/Data.SQLite/SQLiteUserData.cs +++ b/OpenSim/Framework/Data.SQLite/SQLiteUserData.cs | |||
@@ -373,6 +373,29 @@ namespace OpenSim.Framework.Data.SQLite | |||
373 | } | 373 | } |
374 | } | 374 | } |
375 | 375 | ||
376 | |||
377 | public void StoreWebLoginKey(LLUUID AgentID, LLUUID WebLoginKey) | ||
378 | { | ||
379 | DataTable users = ds.Tables["users"]; | ||
380 | lock (ds) | ||
381 | { | ||
382 | DataRow row = users.Rows.Find(Util.ToRawUuidString(AgentID)); | ||
383 | if (row == null) | ||
384 | { | ||
385 | MainLog.Instance.Warn("WEBLOGIN", "Unable to store new web login key for non-existant user"); | ||
386 | } | ||
387 | else | ||
388 | { | ||
389 | UserProfileData user = GetUserByUUID(AgentID); | ||
390 | user.webLoginKey = WebLoginKey; | ||
391 | fillUserRow(row, user); | ||
392 | da.Update(ds, "users"); | ||
393 | |||
394 | } | ||
395 | } | ||
396 | |||
397 | } | ||
398 | |||
376 | /// <summary> | 399 | /// <summary> |
377 | /// Creates a new user profile | 400 | /// Creates a new user profile |
378 | /// </summary> | 401 | /// </summary> |
@@ -392,6 +415,7 @@ namespace OpenSim.Framework.Data.SQLite | |||
392 | else | 415 | else |
393 | { | 416 | { |
394 | fillUserRow(row, user); | 417 | fillUserRow(row, user); |
418 | |||
395 | } | 419 | } |
396 | // This is why we're getting the 'logins never log-off'.. because It isn't clearing the | 420 | // This is why we're getting the 'logins never log-off'.. because It isn't clearing the |
397 | // useragents table once the useragent is null | 421 | // useragents table once the useragent is null |