fixed another char crash
git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/stable@418 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
1dd859d489
commit
5e17118188
@ -1,5 +1,6 @@
|
|||||||
Date Added
|
Date Added
|
||||||
11/29
|
11/29
|
||||||
|
* Fixed crash in src/char_sql/char.c when setting chars offline [MouseJstr]
|
||||||
* Added mapbug.txt which is displayed in map-server, displays
|
* Added mapbug.txt which is displayed in map-server, displays
|
||||||
the last bug or w/e fixed for the map-server [MC Cameri]
|
the last bug or w/e fixed for the map-server [MC Cameri]
|
||||||
-You may change it whenever you want
|
-You may change it whenever you want
|
||||||
|
@ -201,10 +201,12 @@ void set_char_offline(int char_id, int account_id) {
|
|||||||
if (mysql_query(&mysql_handle, tmp_sql))
|
if (mysql_query(&mysql_handle, tmp_sql))
|
||||||
printf("DB server Error (set_char_offline)- %s\n", mysql_error(&mysql_handle));
|
printf("DB server Error (set_char_offline)- %s\n", mysql_error(&mysql_handle));
|
||||||
|
|
||||||
|
if (login_fd <= 0 || session[login_fd]->eof)
|
||||||
|
return;
|
||||||
|
|
||||||
WFIFOW(login_fd,0) = 0x272c;
|
WFIFOW(login_fd,0) = 0x272c;
|
||||||
WFIFOL(login_fd,2) = account_id;
|
WFIFOL(login_fd,2) = account_id;
|
||||||
WFIFOSET(login_fd,6);
|
WFIFOSET(login_fd,6);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//-----------------------------------------------------
|
//-----------------------------------------------------
|
||||||
@ -2048,12 +2050,13 @@ int parse_char(int fd) {
|
|||||||
|
|
||||||
sd = session[fd]->session_data;
|
sd = session[fd]->session_data;
|
||||||
|
|
||||||
if(login_fd < 0)
|
if(login_fd < 0)
|
||||||
session[fd]->eof = 1;
|
session[fd]->eof = 1;
|
||||||
if(session[fd]->eof) {
|
if(session[fd]->eof) {
|
||||||
if (fd == login_fd)
|
if (fd == login_fd)
|
||||||
login_fd = -1;
|
login_fd = -1;
|
||||||
set_char_offline(99,sd->account_id);
|
if (sd != NULL)
|
||||||
|
set_char_offline(99,sd->account_id);
|
||||||
close(fd);
|
close(fd);
|
||||||
delete_session(fd);
|
delete_session(fd);
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user