X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=pdf2swf%2Fxpdf%2FDict.cc;h=dd1517f0ab951b34a28653e6f19e4ec203256a9e;hb=6287c3aded8d9fb8dd645a81b2950709d2cdba17;hp=5eb077e0937cab2186de3417d37230bd5c010d12;hpb=50dd339d3d6262763616efe8d7ee415ab19befb9;p=swftools.git diff --git a/pdf2swf/xpdf/Dict.cc b/pdf2swf/xpdf/Dict.cc index 5eb077e..dd1517f 100644 --- a/pdf2swf/xpdf/Dict.cc +++ b/pdf2swf/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,9 +41,13 @@ Dict::~Dict() { } void Dict::add(char *key, Object *val) { - if (length + 1 > size) { - size += 8; - entries = (DictEntry *)grealloc(entries, size * sizeof(DictEntry)); + if (length == size) { + if (length == 0) { + size = 8; + } else { + size *= 2; + } + entries = (DictEntry *)greallocn(entries, size, sizeof(DictEntry)); } entries[length].key = key; entries[length].val = *val;