X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=pdf%2Fxpdf%2FDict.cc;h=627459078a0a7c8fcb5d315f0cfae38d75471e70;hb=d97441740d457e1463083d561afdb719ca99e66b;hp=5eb077e0937cab2186de3417d37230bd5c010d12;hpb=2a393c134fe3fe8eb85bf818cb7ad6ae4396322a;p=evince.git diff --git a/pdf/xpdf/Dict.cc b/pdf/xpdf/Dict.cc index 5eb077e0..62745907 100644 --- a/pdf/xpdf/Dict.cc +++ b/pdf/xpdf/Dict.cc @@ -2,15 +2,16 @@ // // Dict.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" @@ -40,8 +41,12 @@ Dict::~Dict() { } void Dict::add(char *key, Object *val) { - if (length + 1 > size) { - size += 8; + if (length == size) { + if (length == 0) { + size = 8; + } else { + size *= 2; + } entries = (DictEntry *)grealloc(entries, size * sizeof(DictEntry)); } entries[length].key = key;