summaryrefslogtreecommitdiff
path: root/src/map/clif.c
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2020-04-15 05:23:04 +0300
committerAndrei Karas <akaras@inbox.ru>2020-05-04 01:00:43 +0300
commita9c3213e475fd5463d1978c443099d1fbefe0d5c (patch)
tree9bad61ad3a3289b37afbc3379f7e290b746fe56c /src/map/clif.c
parentdecca97db265de6be348e3c9e6a4adab49c2a143 (diff)
downloadhercules-a9c3213e475fd5463d1978c443099d1fbefe0d5c.tar.gz
hercules-a9c3213e475fd5463d1978c443099d1fbefe0d5c.tar.bz2
hercules-a9c3213e475fd5463d1978c443099d1fbefe0d5c.tar.xz
hercules-a9c3213e475fd5463d1978c443099d1fbefe0d5c.zip
Fix security check in lapin ack packet handler
Diffstat (limited to 'src/map/clif.c')
-rw-r--r--src/map/clif.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/map/clif.c b/src/map/clif.c
index 2b044a2d7..d69508b8e 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -23797,12 +23797,15 @@ static void clif_parse_lapineDdukDdak_ack(int fd, struct map_session_data *sd) _
static void clif_parse_lapineDdukDdak_ack(int fd, struct map_session_data *sd)
{
#if PACKETVER >= 20160302
+ if (sd->state.lapine_ui == 0)
+ return;
+
const struct PACKET_CZ_LAPINEDDUKDDAK_ACK *p = RP2PTR(fd);
struct item_data *it = itemdb->exists(p->itemId);
if (it == NULL || it->lapineddukddak == NULL)
return;
- if (pc_cant_act(sd))
+ if (pc_cant_act_except_lapine(sd))
return;
if (pc->search_inventory(sd, it->nameid) == INDEX_NOT_FOUND)
return;