X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=pdf%2Fxpdf%2FArray.cc;h=27ecbe9e7a1ae4a1559da5c3ac125d9ab71a4a5b;hb=884f739665dc56e66f51e104350f2affd33f2dd8;hp=fbdde49da9089e6d8181d87cf46f1d0138fa7167;hpb=2a393c134fe3fe8eb85bf818cb7ad6ae4396322a;p=evince.git diff --git a/pdf/xpdf/Array.cc b/pdf/xpdf/Array.cc index fbdde49d..27ecbe9e 100644 --- a/pdf/xpdf/Array.cc +++ b/pdf/xpdf/Array.cc @@ -2,15 +2,17 @@ // // Array.cc // -// Copyright 1996-2002 Glyph & Cog, LLC +// Copyright 1996-2003 Glyph & Cog, LLC // //======================================================================== -#ifdef __GNUC__ +#include + +#ifdef USE_GCC_PRAGMAS #pragma implementation #endif -#include +#include #include #include "gmem.h" #include "Object.h" @@ -45,9 +47,23 @@ void Array::add(Object *elem) { } Object *Array::get(int i, Object *obj) { + if (i < 0 || i >= length) { +#ifdef DEBUG_MEM + abort(); +#else + return obj->initNull(); +#endif + } return elems[i].fetch(xref, obj); } Object *Array::getNF(int i, Object *obj) { + if (i < 0 || i >= length) { +#ifdef DEBUG_MEM + abort(); +#else + return obj->initNull(); +#endif + } return elems[i].copy(obj); }