New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Instance Issue #4363
Comments
+1 to this issue |
+1 |
it would be better if each one put his own crash log , not +1 |
The issue with this is it happens randomly.
|
something that worse to read
|
Also getting crashes which we believe might be related to this issue. It's a bit hard to pinpoint where it happens as it only happens every few weeks or so, and a lot of things are happening at the time of the crash. Anyway, for what it's worth: rAthena Hash: 34e5f53 Client Date: 2017-06-14bRagexeRE Server Mode: Pre renewal
|
Well, crash and more crash =( |
A potential cause could be Line 2742 in 69b68bc
Comment just this line then give feedback please |
@Atemo im still getting the crashed. |
This crash almost happen in instance_destory I guess But in the map_addblock function In map_delinstancemap function
maybe problem in variable m is wrong? |
I noticed it too, that it happens when the instance has been destroyed. |
// Kick everyone out
map_foreachinmap(map_instancemap_leave, m, BL_PC); This gets called before the clearing of the map's block data on instance destruction. It kicks all online players on that map out to their save points.
|
@aleos89 |
This issue is very random, Im not sure how or what happened. I thought it was just me but others are experiencing this issue too. |
from latest rathena(5cc391b) still randomly crash :( |
Not the lastest rathena
So maybe it's not fully related, but it may help. It happened after a instance being destroyed too. Happened on a custom instance. |
diff --git a/src/map/clif.cpp b/src/map/clif.cpp
index da270e2ff..de7906895 100644
--- a/src/map/clif.cpp
+++ b/src/map/clif.cpp
@@ -10538,6 +10538,11 @@ void clif_parse_LoadEndAck(int fd,struct map_session_data *sd)
struct map_data *mapdata = map_getmapdata(sd->bl.m);
+ if (mapdata->block == nullptr) { // Map block data is destroyed
+ pc_setpos(sd, sd->status.save_point.map, sd->status.save_point.x, sd->status.save_point.y, CLR_OUTSIGHT);
+ return;
+ }
+
if(battle_config.pc_invincible_time > 0) {
if(mapdata_flag_gvg(mapdata))
pc_setinvincibletimer(sd,battle_config.pc_invincible_time<<1); Could you guys try this out for me? |
I'm not sure why this crash is randomly happening on a custom instance script and also if running this alone will not crashed anything it requires a lot of people to run it. |
I testing. |
@aleos89 Have issue on pc_setpos |
Has anyone found a solution? Even if temporary to resolve? |
map.cpp > map_addblock What we did here was check if mapdata is NULL or mapdata->block is NULL. If so, throw an error and return 1. We haven't crashed since. |
Are the people who reported this problem using this PR? |
Not in our case. |
Maybe show what you did, and devs can check it why its crashing? |
* Fixes #4363. * Resolves players warping to freed maps resulting in a crash. * Clear out the instance_id from mapdata when clearing. Thanks to everyone who reported and helped get to the bottom of the issue!
* Fixes #4363. * Resolves players warping to freed maps resulting in a crash. * Clear out the instance_id from mapdata when clearing. Thanks to everyone who reported and helped get to the bottom of the issue!
The text was updated successfully, but these errors were encountered: