Merge from sourcemod-1.1.

This commit is contained in:
David Anderson
2009-02-01 02:37:00 -05:00
3 changed files with 26 additions and 3 deletions
+23
View File
@@ -46,6 +46,7 @@ CookieTypeHandler g_CookieTypeHandler;
HandleType_t g_CookieIterator = 0;
CookieIteratorHandler g_CookieIteratorHandler;
DbDriver g_DriverType;
static const DatabaseInfo *storage_local = NULL;
bool ClientPrefs::SDK_OnLoad(char *error, size_t maxlength, bool late)
{
@@ -58,6 +59,20 @@ bool ClientPrefs::SDK_OnLoad(char *error, size_t maxlength, bool late)
{
DBInfo = dbi->FindDatabaseConf("default");
if (DBInfo == NULL ||
(strcmp(DBInfo->host, "localhost") == 0 &&
strcmp(DBInfo->database, "sourcemod") == 0 &&
strcmp(DBInfo->user, "root") == 0 &&
strcmp(DBInfo->pass, "") == 0 &&
strcmp(DBInfo->driver, "") == 0))
{
storage_local = dbi->FindDatabaseConf("storage-local");
if (DBInfo == NULL)
{
DBInfo = storage_local;
}
}
if (DBInfo == NULL)
{
snprintf(error, maxlength, "Could not find \"clientprefs\" or \"default\" database configs");
@@ -176,6 +191,14 @@ void ClientPrefs::DatabaseConnect()
Database = Driver->Connect(DBInfo, true, error, sizeof(error));
if (Database == NULL &&
DBInfo != storage_local &&
storage_local != NULL)
{
DBInfo = storage_local;
Database = Driver->Connect(DBInfo, true, error, sizeof(error));
}
if (Database == NULL)
{
g_pSM->LogError(myself, error);