add checks for negative mork_pos values during qualification of

valid indexes into a morkArray.  Also cast integer types to
quell some compiler warnings about signed/unsigned.


git-svn-id: svn://10.0.0.236/trunk@28121 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
davidmc%netscape.com
1999-04-19 22:19:50 +00:00
parent 28409f45ad
commit 7b339c9d3a
2 changed files with 6 additions and 6 deletions

View File

@@ -193,7 +193,7 @@ morkArray::SafeAt(morkEnv* ev, mork_pos inPos)
{
if ( mArray_Slots )
{
if ( inPos < mArray_Fill )
if ( inPos >= 0 && inPos < (mork_pos) mArray_Fill )
return mArray_Slots[ inPos ];
else
this->IndexBeyondEndError(ev);
@@ -209,7 +209,7 @@ morkArray::SafeAtPut(morkEnv* ev, mork_pos inPos, void* ioSlot)
{
if ( mArray_Slots )
{
if ( inPos < mArray_Fill )
if ( inPos >= 0 && inPos < (mork_pos) mArray_Fill )
{
mArray_Slots[ inPos ] = ioSlot;
++mArray_Seed;
@@ -270,7 +270,7 @@ void
morkArray::CutSlot(morkEnv* ev, mork_pos inPos)
{
mork_fill fill = mArray_Fill;
if ( inPos < fill ) // cutting a slot in the used array portion?
if ( inPos >= 0 && inPos < (mork_pos) fill ) // cutting slot in used array portion?
{
void** slot = mArray_Slots; // the slot vector
void** end = slot + fill; // one past the last used array slot

View File

@@ -193,7 +193,7 @@ morkArray::SafeAt(morkEnv* ev, mork_pos inPos)
{
if ( mArray_Slots )
{
if ( inPos < mArray_Fill )
if ( inPos >= 0 && inPos < (mork_pos) mArray_Fill )
return mArray_Slots[ inPos ];
else
this->IndexBeyondEndError(ev);
@@ -209,7 +209,7 @@ morkArray::SafeAtPut(morkEnv* ev, mork_pos inPos, void* ioSlot)
{
if ( mArray_Slots )
{
if ( inPos < mArray_Fill )
if ( inPos >= 0 && inPos < (mork_pos) mArray_Fill )
{
mArray_Slots[ inPos ] = ioSlot;
++mArray_Seed;
@@ -270,7 +270,7 @@ void
morkArray::CutSlot(morkEnv* ev, mork_pos inPos)
{
mork_fill fill = mArray_Fill;
if ( inPos < fill ) // cutting a slot in the used array portion?
if ( inPos >= 0 && inPos < (mork_pos) fill ) // cutting slot in used array portion?
{
void** slot = mArray_Slots; // the slot vector
void** end = slot + fill; // one past the last used array slot