diff options
author | shinomori <shinomori@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2005-04-03 15:53:04 +0000 |
---|---|---|
committer | shinomori <shinomori@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2005-04-03 15:53:04 +0000 |
commit | 74362c7e51463fdc5008ea0ba9ebfb56b2e0994a (patch) | |
tree | 0027e5d34aa90fcf04a7a77111f2be4cc8ef4a18 /src/login_sql | |
parent | 922830421a2ac8c3ffa21fa64479801207a0bde0 (diff) | |
download | hercules-74362c7e51463fdc5008ea0ba9ebfb56b2e0994a.tar.gz hercules-74362c7e51463fdc5008ea0ba9ebfb56b2e0994a.tar.bz2 hercules-74362c7e51463fdc5008ea0ba9ebfb56b2e0994a.tar.xz hercules-74362c7e51463fdc5008ea0ba9ebfb56b2e0994a.zip |
integrating anti freeze system to server status update, should cure dropping server connections [Shinomori]
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1389 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/login_sql')
-rw-r--r-- | src/login_sql/login.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/login_sql/login.c b/src/login_sql/login.c index 3e2c66e53..58432d037 100644 --- a/src/login_sql/login.c +++ b/src/login_sql/login.c @@ -789,16 +789,24 @@ int parse_fromchar(int fd){ return 0; // how many users on world? (update) if (server[id].users != RFIFOL(fd,2)) + { printf("set users %s : %d\n", server[id].name, RFIFOL(fd,2)); - server[id].users = RFIFOL(fd,2); + + server[id].users = RFIFOL(fd,2); + sprintf(tmpsql,"UPDATE `sstatus` SET `user` = '%d' WHERE `index` = '%d'", server[id].users, id); + // query + if (mysql_query(&mysql_handle, tmpsql)) { + printf("DB server Error - %s\n", mysql_error(&mysql_handle)); + } + } + if(anti_freeze_enable) server_freezeflag[id] = 5; // Char anti-freeze system. Counter. 5 ok, 4...0 freezed - sprintf(tmpsql,"UPDATE `sstatus` SET `user` = '%d' WHERE `index` = '%d'", server[id].users, id); - // query - if (mysql_query(&mysql_handle, tmpsql)) { - printf("DB server Error - %s\n", mysql_error(&mysql_handle)); - } + // send some answer + WFIFOW(fd,0) = 0x2718; + WFIFOSET(fd,2); + RFIFOSKIP(fd,6); break; |