diff options
Diffstat (limited to 'doio.c')
-rw-r--r-- | doio.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -2251,7 +2251,7 @@ Perl_do_shmio(pTHX_ I32 optype, SV **mark, SV **sp) SETERRNO(0,0); if (shmctl(id, IPC_STAT, &shmds) == -1) return -1; - if (mpos < 0 || msize < 0 || mpos + msize > shmds.shm_segsz) { + if (mpos < 0 || msize < 0 || (size_t)mpos + msize > shmds.shm_segsz) { SETERRNO(EFAULT,SS_ACCVIO); /* can't do as caller requested */ return -1; } @@ -2264,7 +2264,7 @@ Perl_do_shmio(pTHX_ I32 optype, SV **mark, SV **sp) if (! SvOK(mstr)) sv_setpvn(mstr, "", 0); SvPV_force_nolen(mstr); - mbuf = SvGROW(mstr, msize+1); + mbuf = SvGROW(mstr, (STRLEN)msize+1); Copy(shm + mpos, mbuf, msize, char); SvCUR_set(mstr, msize); |