mirror of
https://github.com/EnergyMech/energymech.git
synced 2025-12-17 15:36:50 +00:00
Merge pull request #18 from joonicks/dev
updated esay buffer overflow fix
This commit is contained in:
commit
3166202eb7
10
src/vars.c
10
src/vars.c
@ -313,7 +313,7 @@ void do_esay(COMMAND_ARGS)
|
|||||||
char c,*chp;
|
char c,*chp;
|
||||||
int i,n;
|
int i,n;
|
||||||
|
|
||||||
ec_end = output + MSGLEN - 20;
|
ec_end = output + MSGLEN - 50;
|
||||||
ec_src = rest;
|
ec_src = rest;
|
||||||
rest = STREND(rest);
|
rest = STREND(rest);
|
||||||
ec_dest = output;
|
ec_dest = output;
|
||||||
@ -324,7 +324,9 @@ void do_esay(COMMAND_ARGS)
|
|||||||
{
|
{
|
||||||
if (*ec_src != '$')
|
if (*ec_src != '$')
|
||||||
{
|
{
|
||||||
*(ec_dest++) = *(ec_src++);
|
if (ec_dest < ec_end)
|
||||||
|
*(ec_dest++) = *(ec_src);
|
||||||
|
ec_src++;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
for(i=0;ecmd[i].len;i++)
|
for(i=0;ecmd[i].len;i++)
|
||||||
@ -350,7 +352,9 @@ void do_esay(COMMAND_ARGS)
|
|||||||
}
|
}
|
||||||
if (!ecmd[i].len)
|
if (!ecmd[i].len)
|
||||||
{
|
{
|
||||||
*(ec_dest++) = *(ec_src++);
|
if (ec_dest < ec_end)
|
||||||
|
*(ec_dest++) = *(ec_src);
|
||||||
|
ec_src++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*ec_dest = 0;
|
*ec_dest = 0;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user