diff options
Diffstat (limited to 'pdf/xpdf/Dict.cc')
-rw-r--r-- | pdf/xpdf/Dict.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/pdf/xpdf/Dict.cc b/pdf/xpdf/Dict.cc index 9575e4c..6274590 100644 --- a/pdf/xpdf/Dict.cc +++ b/pdf/xpdf/Dict.cc @@ -41,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; |