summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/qpdf/QPDFObjectHandle.hh4
-rw-r--r--libqpdf/QPDFObjectHandle.cc10
-rw-r--r--qpdf/qtest/qpdf/bad10-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad11-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad12-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad12.out2
-rw-r--r--qpdf/qtest/qpdf/bad2-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad22-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad23-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad25-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad26-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad27-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad28-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad28.out2
-rw-r--r--qpdf/qtest/qpdf/bad3-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad30-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad30.out2
-rw-r--r--qpdf/qtest/qpdf/bad31-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad31.out2
-rw-r--r--qpdf/qtest/qpdf/bad32-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad33-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad34-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad4-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad5-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad6-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad6.out2
-rw-r--r--qpdf/qtest/qpdf/bad8-recover.out2
-rw-r--r--qpdf/qtest/qpdf/bad9-recover.out2
-rw-r--r--qpdf/qtest/qpdf/good1.out2
-rw-r--r--qpdf/qtest/qpdf/good10.out2
-rw-r--r--qpdf/qtest/qpdf/good11.out2
-rw-r--r--qpdf/qtest/qpdf/good12.out2
-rw-r--r--qpdf/qtest/qpdf/good13.out2
-rw-r--r--qpdf/qtest/qpdf/good15.out2
-rw-r--r--qpdf/qtest/qpdf/good16.out2
-rw-r--r--qpdf/qtest/qpdf/good17.out2
-rw-r--r--qpdf/qtest/qpdf/good18.out2
-rw-r--r--qpdf/qtest/qpdf/good19.out2
-rw-r--r--qpdf/qtest/qpdf/good2.out2
-rw-r--r--qpdf/qtest/qpdf/good20.out2
-rw-r--r--qpdf/qtest/qpdf/good3.out2
-rw-r--r--qpdf/qtest/qpdf/good4.out2
-rw-r--r--qpdf/qtest/qpdf/good5.out2
-rw-r--r--qpdf/qtest/qpdf/good6.out2
-rw-r--r--qpdf/qtest/qpdf/good7.out2
-rw-r--r--qpdf/qtest/qpdf/good8.out2
-rw-r--r--qpdf/qtest/qpdf/good9.out2
-rw-r--r--qpdf/test_driver.cc4
48 files changed, 56 insertions, 52 deletions
diff --git a/include/qpdf/QPDFObjectHandle.hh b/include/qpdf/QPDFObjectHandle.hh
index c42fa719..60304ed5 100644
--- a/include/qpdf/QPDFObjectHandle.hh
+++ b/include/qpdf/QPDFObjectHandle.hh
@@ -102,9 +102,9 @@ class QPDFObjectHandle
// useful for doing rapid type tests (like switch statements) or
// for testing and debugging.
QPDF_DLL
- QPDFObject::object_type_e getTypeCode() const;
+ QPDFObject::object_type_e getTypeCode();
QPDF_DLL
- char const* getTypeName() const;
+ char const* getTypeName();
// Exactly one of these will return true for any object. Operator
// and InlineImage are only allowed in content streams.
diff --git a/libqpdf/QPDFObjectHandle.cc b/libqpdf/QPDFObjectHandle.cc
index 0c6b0a9d..84db6003 100644
--- a/libqpdf/QPDFObjectHandle.cc
+++ b/libqpdf/QPDFObjectHandle.cc
@@ -87,10 +87,11 @@ QPDFObjectHandle::isInitialized() const
}
QPDFObject::object_type_e
-QPDFObjectHandle::getTypeCode() const
+QPDFObjectHandle::getTypeCode()
{
- if (obj.getPointer())
+ if (this->initialized)
{
+ dereference();
return obj->getTypeCode();
}
else
@@ -100,10 +101,11 @@ QPDFObjectHandle::getTypeCode() const
}
char const*
-QPDFObjectHandle::getTypeName() const
+QPDFObjectHandle::getTypeName()
{
- if (obj.getPointer())
+ if (this->initialized)
{
+ dereference();
return obj->getTypeName();
}
else
diff --git a/qpdf/qtest/qpdf/bad10-recover.out b/qpdf/qtest/qpdf/bad10-recover.out
index 25de9bcc..32b12612 100644
--- a/qpdf/qtest/qpdf/bad10-recover.out
+++ b/qpdf/qtest/qpdf/bad10-recover.out
@@ -2,7 +2,7 @@ WARNING: bad10.pdf: file is damaged
WARNING: bad10.pdf (trailer, file position 712): /Size key in trailer dictionary is not an integer
WARNING: bad10.pdf: Attempting to reconstruct cross-reference table
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad11-recover.out b/qpdf/qtest/qpdf/bad11-recover.out
index 43bcd068..82e891b0 100644
--- a/qpdf/qtest/qpdf/bad11-recover.out
+++ b/qpdf/qtest/qpdf/bad11-recover.out
@@ -2,7 +2,7 @@ WARNING: bad11.pdf: file is damaged
WARNING: bad11.pdf (trailer, file position 905): /Prev key in trailer dictionary is not an integer
WARNING: bad11.pdf: Attempting to reconstruct cross-reference table
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad12-recover.out b/qpdf/qtest/qpdf/bad12-recover.out
index 97dfb642..0c07a7fd 100644
--- a/qpdf/qtest/qpdf/bad12-recover.out
+++ b/qpdf/qtest/qpdf/bad12-recover.out
@@ -1,6 +1,6 @@
WARNING: bad12.pdf: reported number of objects (9) inconsistent with actual number of objects (8)
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad12.out b/qpdf/qtest/qpdf/bad12.out
index d07d74bd..666e92fd 100644
--- a/qpdf/qtest/qpdf/bad12.out
+++ b/qpdf/qtest/qpdf/bad12.out
@@ -1,6 +1,6 @@
WARNING: bad12.pdf: reported number of objects (9) inconsistent with actual number of objects (8)
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad2-recover.out b/qpdf/qtest/qpdf/bad2-recover.out
index 569ca19c..7b16b963 100644
--- a/qpdf/qtest/qpdf/bad2-recover.out
+++ b/qpdf/qtest/qpdf/bad2-recover.out
@@ -2,7 +2,7 @@ WARNING: bad2.pdf: file is damaged
WARNING: bad2.pdf: can't find startxref
WARNING: bad2.pdf: Attempting to reconstruct cross-reference table
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad22-recover.out b/qpdf/qtest/qpdf/bad22-recover.out
index 41eb3e34..4a44fad9 100644
--- a/qpdf/qtest/qpdf/bad22-recover.out
+++ b/qpdf/qtest/qpdf/bad22-recover.out
@@ -1,5 +1,5 @@
WARNING: bad22.pdf (object 4 0, file position 341): attempting to recover stream length
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Qength 44 >>
Raw stream data:
BT
diff --git a/qpdf/qtest/qpdf/bad23-recover.out b/qpdf/qtest/qpdf/bad23-recover.out
index 773205a9..729e8d28 100644
--- a/qpdf/qtest/qpdf/bad23-recover.out
+++ b/qpdf/qtest/qpdf/bad23-recover.out
@@ -1,5 +1,5 @@
WARNING: bad23.pdf (object 4 0, file position 341): attempting to recover stream length
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Length () >>
Raw stream data:
BT
diff --git a/qpdf/qtest/qpdf/bad25-recover.out b/qpdf/qtest/qpdf/bad25-recover.out
index 23893d5d..6e40c85b 100644
--- a/qpdf/qtest/qpdf/bad25-recover.out
+++ b/qpdf/qtest/qpdf/bad25-recover.out
@@ -3,7 +3,7 @@ WARNING: bad25.pdf (object 4 0, file position 307): expected n n obj
WARNING: bad25.pdf: Attempting to reconstruct cross-reference table
WARNING: bad25.pdf: object 4 0 not found in file after regenerating cross reference table
/QTest is implicit
-/QTest is indirect
+/QTest is indirect and has type null (2)
/QTest is null
unparse: 4 0 R
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad26-recover.out b/qpdf/qtest/qpdf/bad26-recover.out
index 248aff7d..ef1c02eb 100644
--- a/qpdf/qtest/qpdf/bad26-recover.out
+++ b/qpdf/qtest/qpdf/bad26-recover.out
@@ -3,7 +3,7 @@ WARNING: bad26.pdf (object 4 0, file position 307): expected n n obj
WARNING: bad26.pdf: Attempting to reconstruct cross-reference table
WARNING: bad26.pdf: object 4 0 not found in file after regenerating cross reference table
/QTest is implicit
-/QTest is indirect
+/QTest is indirect and has type null (2)
/QTest is null
unparse: 4 0 R
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad27-recover.out b/qpdf/qtest/qpdf/bad27-recover.out
index f06203b5..b0967b34 100644
--- a/qpdf/qtest/qpdf/bad27-recover.out
+++ b/qpdf/qtest/qpdf/bad27-recover.out
@@ -3,7 +3,7 @@ WARNING: bad27.pdf (object 4 0, file position 307): expected n n obj
WARNING: bad27.pdf: Attempting to reconstruct cross-reference table
WARNING: bad27.pdf: object 4 0 not found in file after regenerating cross reference table
/QTest is implicit
-/QTest is indirect
+/QTest is indirect and has type null (2)
/QTest is null
unparse: 4 0 R
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad28-recover.out b/qpdf/qtest/qpdf/bad28-recover.out
index 62322d92..ab152518 100644
--- a/qpdf/qtest/qpdf/bad28-recover.out
+++ b/qpdf/qtest/qpdf/bad28-recover.out
@@ -1,5 +1,5 @@
WARNING: bad28.pdf (object 4 0, file position 395): expected endobj
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Length 44 >>
Raw stream data:
BT
diff --git a/qpdf/qtest/qpdf/bad28.out b/qpdf/qtest/qpdf/bad28.out
index 11309bc5..fb02944e 100644
--- a/qpdf/qtest/qpdf/bad28.out
+++ b/qpdf/qtest/qpdf/bad28.out
@@ -1,5 +1,5 @@
WARNING: bad28.pdf (object 4 0, file position 395): expected endobj
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Length 44 >>
Raw stream data:
BT
diff --git a/qpdf/qtest/qpdf/bad3-recover.out b/qpdf/qtest/qpdf/bad3-recover.out
index e282d665..9d6438fa 100644
--- a/qpdf/qtest/qpdf/bad3-recover.out
+++ b/qpdf/qtest/qpdf/bad3-recover.out
@@ -2,7 +2,7 @@ WARNING: bad3.pdf: file is damaged
WARNING: bad3.pdf (file position 542): xref not found
WARNING: bad3.pdf: Attempting to reconstruct cross-reference table
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad30-recover.out b/qpdf/qtest/qpdf/bad30-recover.out
index 515bfbd5..5e228a58 100644
--- a/qpdf/qtest/qpdf/bad30-recover.out
+++ b/qpdf/qtest/qpdf/bad30-recover.out
@@ -1,4 +1,4 @@
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Filter (FlateDecode) /Length 123 >>
Raw stream data:
x%11 b;t4| wXID8G>rQu O E:IWPlII)rp4~;As/҅jcszT.?u<*6
diff --git a/qpdf/qtest/qpdf/bad30.out b/qpdf/qtest/qpdf/bad30.out
index 515bfbd5..5e228a58 100644
--- a/qpdf/qtest/qpdf/bad30.out
+++ b/qpdf/qtest/qpdf/bad30.out
@@ -1,4 +1,4 @@
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Filter (FlateDecode) /Length 123 >>
Raw stream data:
x%11 b;t4| wXID8G>rQu O E:IWPlII)rp4~;As/҅jcszT.?u<*6
diff --git a/qpdf/qtest/qpdf/bad31-recover.out b/qpdf/qtest/qpdf/bad31-recover.out
index 313e2083..527f27d0 100644
--- a/qpdf/qtest/qpdf/bad31-recover.out
+++ b/qpdf/qtest/qpdf/bad31-recover.out
@@ -1,4 +1,4 @@
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Filter [ /Oink /Moo /FlateDecode ] /Length 123 >>
Raw stream data:
x%11 b;t4| wXID8G>rQu O E:IWPlII)rp4~;As/҅jcszT.?u<*6
diff --git a/qpdf/qtest/qpdf/bad31.out b/qpdf/qtest/qpdf/bad31.out
index 2ad01536..7f1cfb58 100644
--- a/qpdf/qtest/qpdf/bad31.out
+++ b/qpdf/qtest/qpdf/bad31.out
@@ -1,4 +1,4 @@
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Filter [ /Oink /Moo /FlateDecode ] /Length 123 >>
Raw stream data:
x%11 b;t4| wXID8G>rQu O E:IWPlII)rp4~;As/҅jcszT.?u<*6
diff --git a/qpdf/qtest/qpdf/bad32-recover.out b/qpdf/qtest/qpdf/bad32-recover.out
index c038a297..4f8d5257 100644
--- a/qpdf/qtest/qpdf/bad32-recover.out
+++ b/qpdf/qtest/qpdf/bad32-recover.out
@@ -3,7 +3,7 @@ WARNING: bad32.pdf (object 4 0, file position 307): expected 4 0 obj
WARNING: bad32.pdf: Attempting to reconstruct cross-reference table
WARNING: bad32.pdf: object 4 0 not found in file after regenerating cross reference table
/QTest is implicit
-/QTest is indirect
+/QTest is indirect and has type null (2)
/QTest is null
unparse: 4 0 R
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad33-recover.out b/qpdf/qtest/qpdf/bad33-recover.out
index 51dabe67..7cb645a7 100644
--- a/qpdf/qtest/qpdf/bad33-recover.out
+++ b/qpdf/qtest/qpdf/bad33-recover.out
@@ -1,7 +1,7 @@
WARNING: bad33.pdf: file is damaged
WARNING: bad33.pdf (file position 1771): xref not found
WARNING: bad33.pdf: Attempting to reconstruct cross-reference table
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Filter (FlateDecode) /Length 123 >>
Raw stream data:
x%11 b;t4| wXID8G>rQu O E:IWPlII)rp4~;As/҅jcszT.?u<*6
diff --git a/qpdf/qtest/qpdf/bad34-recover.out b/qpdf/qtest/qpdf/bad34-recover.out
index 08cc7bb1..3343be70 100644
--- a/qpdf/qtest/qpdf/bad34-recover.out
+++ b/qpdf/qtest/qpdf/bad34-recover.out
@@ -1,7 +1,7 @@
WARNING: bad34.pdf: file is damaged
WARNING: bad34.pdf (object 4 0, file position 322): expected n n obj
WARNING: bad34.pdf: Attempting to reconstruct cross-reference table
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Length 44 /Quack 9 0 R >>
Raw stream data:
BT
diff --git a/qpdf/qtest/qpdf/bad4-recover.out b/qpdf/qtest/qpdf/bad4-recover.out
index 508acea5..2aa06fbe 100644
--- a/qpdf/qtest/qpdf/bad4-recover.out
+++ b/qpdf/qtest/qpdf/bad4-recover.out
@@ -2,7 +2,7 @@ WARNING: bad4.pdf: file is damaged
WARNING: bad4.pdf (xref table, file position 547): xref syntax invalid
WARNING: bad4.pdf: Attempting to reconstruct cross-reference table
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad5-recover.out b/qpdf/qtest/qpdf/bad5-recover.out
index 75fe746e..7a0fd69d 100644
--- a/qpdf/qtest/qpdf/bad5-recover.out
+++ b/qpdf/qtest/qpdf/bad5-recover.out
@@ -2,7 +2,7 @@ WARNING: bad5.pdf: file is damaged
WARNING: bad5.pdf (xref table, file position 591): invalid xref entry (obj=2)
WARNING: bad5.pdf: Attempting to reconstruct cross-reference table
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad6-recover.out b/qpdf/qtest/qpdf/bad6-recover.out
index 1d31025f..9a222c13 100644
--- a/qpdf/qtest/qpdf/bad6-recover.out
+++ b/qpdf/qtest/qpdf/bad6-recover.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad6.out b/qpdf/qtest/qpdf/bad6.out
index 26b50cb6..1d054ae5 100644
--- a/qpdf/qtest/qpdf/bad6.out
+++ b/qpdf/qtest/qpdf/bad6.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad8-recover.out b/qpdf/qtest/qpdf/bad8-recover.out
index f55a7948..59b3b8c8 100644
--- a/qpdf/qtest/qpdf/bad8-recover.out
+++ b/qpdf/qtest/qpdf/bad8-recover.out
@@ -2,7 +2,7 @@ WARNING: bad8.pdf: file is damaged
WARNING: bad8.pdf (file position 543): xref not found
WARNING: bad8.pdf: Attempting to reconstruct cross-reference table
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/bad9-recover.out b/qpdf/qtest/qpdf/bad9-recover.out
index f795a156..b9608d1b 100644
--- a/qpdf/qtest/qpdf/bad9-recover.out
+++ b/qpdf/qtest/qpdf/bad9-recover.out
@@ -2,7 +2,7 @@ WARNING: bad9.pdf: file is damaged
WARNING: bad9.pdf (trailer, file position 712): trailer dictionary lacks /Size key
WARNING: bad9.pdf: Attempting to reconstruct cross-reference table
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good1.out b/qpdf/qtest/qpdf/good1.out
index 1d31025f..9a222c13 100644
--- a/qpdf/qtest/qpdf/good1.out
+++ b/qpdf/qtest/qpdf/good1.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good10.out b/qpdf/qtest/qpdf/good10.out
index 3c0bed95..0ae08058 100644
--- a/qpdf/qtest/qpdf/good10.out
+++ b/qpdf/qtest/qpdf/good10.out
@@ -1,4 +1,4 @@
-/QTest is direct
+/QTest is direct and has type array (8)
/QTest is an array with 3 items
item 0 is direct
item 1 is direct
diff --git a/qpdf/qtest/qpdf/good11.out b/qpdf/qtest/qpdf/good11.out
index 676a0343..2079096a 100644
--- a/qpdf/qtest/qpdf/good11.out
+++ b/qpdf/qtest/qpdf/good11.out
@@ -1,4 +1,4 @@
-/QTest is direct
+/QTest is direct and has type dictionary (9)
/QTest is a dictionary
/a is direct
unparse: << /a (a) /b 8 0 R >>
diff --git a/qpdf/qtest/qpdf/good12.out b/qpdf/qtest/qpdf/good12.out
index b75d27b1..11cd7089 100644
--- a/qpdf/qtest/qpdf/good12.out
+++ b/qpdf/qtest/qpdf/good12.out
@@ -1,4 +1,4 @@
-/QTest is indirect
+/QTest is indirect and has type stream (10)
/QTest is a stream. Dictionary: << /Filter /FlateDecode /Length 123 >>
Raw stream data:
x%11 b;t4| wXID8G>rQu O E:IWPlII)rp4~;As/҅jcszT.?u<*6
diff --git a/qpdf/qtest/qpdf/good13.out b/qpdf/qtest/qpdf/good13.out
index a50358cb..7ff08b01 100644
--- a/qpdf/qtest/qpdf/good13.out
+++ b/qpdf/qtest/qpdf/good13.out
@@ -1,4 +1,4 @@
-/QTest is indirect
+/QTest is indirect and has type dictionary (9)
/QTest is a dictionary
/hex strings is direct
/indirect is indirect
diff --git a/qpdf/qtest/qpdf/good15.out b/qpdf/qtest/qpdf/good15.out
index 884ea6ed..8a670d11 100644
--- a/qpdf/qtest/qpdf/good15.out
+++ b/qpdf/qtest/qpdf/good15.out
@@ -1,4 +1,4 @@
-/QTest is direct
+/QTest is direct and has type name (7)
/QTest is a name with value /oink
unparse: /oink
unparseResolved: /oink
diff --git a/qpdf/qtest/qpdf/good16.out b/qpdf/qtest/qpdf/good16.out
index 1d31025f..9a222c13 100644
--- a/qpdf/qtest/qpdf/good16.out
+++ b/qpdf/qtest/qpdf/good16.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good17.out b/qpdf/qtest/qpdf/good17.out
index 1d31025f..9a222c13 100644
--- a/qpdf/qtest/qpdf/good17.out
+++ b/qpdf/qtest/qpdf/good17.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good18.out b/qpdf/qtest/qpdf/good18.out
index 1d31025f..9a222c13 100644
--- a/qpdf/qtest/qpdf/good18.out
+++ b/qpdf/qtest/qpdf/good18.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good19.out b/qpdf/qtest/qpdf/good19.out
index 1d31025f..9a222c13 100644
--- a/qpdf/qtest/qpdf/good19.out
+++ b/qpdf/qtest/qpdf/good19.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good2.out b/qpdf/qtest/qpdf/good2.out
index 1d31025f..9a222c13 100644
--- a/qpdf/qtest/qpdf/good2.out
+++ b/qpdf/qtest/qpdf/good2.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good20.out b/qpdf/qtest/qpdf/good20.out
index 1d31025f..9a222c13 100644
--- a/qpdf/qtest/qpdf/good20.out
+++ b/qpdf/qtest/qpdf/good20.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is direct
+/QTest is direct and has type null (2)
/QTest is null
unparse: null
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good3.out b/qpdf/qtest/qpdf/good3.out
index 7982e109..a3afbfc0 100644
--- a/qpdf/qtest/qpdf/good3.out
+++ b/qpdf/qtest/qpdf/good3.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is indirect
+/QTest is indirect and has type null (2)
/QTest is null
unparse: 7 0 R
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good4.out b/qpdf/qtest/qpdf/good4.out
index 7982e109..a3afbfc0 100644
--- a/qpdf/qtest/qpdf/good4.out
+++ b/qpdf/qtest/qpdf/good4.out
@@ -1,5 +1,5 @@
/QTest is implicit
-/QTest is indirect
+/QTest is indirect and has type null (2)
/QTest is null
unparse: 7 0 R
unparseResolved: null
diff --git a/qpdf/qtest/qpdf/good5.out b/qpdf/qtest/qpdf/good5.out
index ff2e3fdf..db4239af 100644
--- a/qpdf/qtest/qpdf/good5.out
+++ b/qpdf/qtest/qpdf/good5.out
@@ -1,4 +1,4 @@
-/QTest is indirect
+/QTest is indirect and has type boolean (3)
/QTest is Boolean with value true
unparse: 7 0 R
unparseResolved: true
diff --git a/qpdf/qtest/qpdf/good6.out b/qpdf/qtest/qpdf/good6.out
index 17b498d1..3213c05a 100644
--- a/qpdf/qtest/qpdf/good6.out
+++ b/qpdf/qtest/qpdf/good6.out
@@ -1,4 +1,4 @@
-/QTest is direct
+/QTest is direct and has type boolean (3)
/QTest is Boolean with value false
unparse: false
unparseResolved: false
diff --git a/qpdf/qtest/qpdf/good7.out b/qpdf/qtest/qpdf/good7.out
index ab14fba0..5ea32052 100644
--- a/qpdf/qtest/qpdf/good7.out
+++ b/qpdf/qtest/qpdf/good7.out
@@ -1,4 +1,4 @@
-/QTest is direct
+/QTest is direct and has type integer (4)
/QTest is an integer with value 16059
unparse: 16059
unparseResolved: 16059
diff --git a/qpdf/qtest/qpdf/good8.out b/qpdf/qtest/qpdf/good8.out
index e631e46a..ae23605b 100644
--- a/qpdf/qtest/qpdf/good8.out
+++ b/qpdf/qtest/qpdf/good8.out
@@ -1,4 +1,4 @@
-/QTest is indirect
+/QTest is indirect and has type real (5)
/QTest is a real number with value 3.14159
unparse: 7 0 R
unparseResolved: 3.14159
diff --git a/qpdf/qtest/qpdf/good9.out b/qpdf/qtest/qpdf/good9.out
index 75c40bc9..c481133f 100644
--- a/qpdf/qtest/qpdf/good9.out
+++ b/qpdf/qtest/qpdf/good9.out
@@ -1,4 +1,4 @@
-/QTest is direct
+/QTest is direct and has type string (6)
/QTest is a string with value Hola!
unparse: (Hola!)
unparseResolved: (Hola!)
diff --git a/qpdf/test_driver.cc b/qpdf/test_driver.cc
index 3863cdbe..ec6fcff0 100644
--- a/qpdf/test_driver.cc
+++ b/qpdf/test_driver.cc
@@ -232,7 +232,9 @@ void runtest(int n, char const* filename1, char const* arg2)
qtest.isIndirect() ? 1 : 0);
std::cout << "/QTest is "
<< (qtest.isIndirect() ? "in" : "")
- << "direct" << std::endl;
+ << "direct and has type "
+ << qtest.getTypeName()
+ << " (" << qtest.getTypeCode() << ")" << std::endl;
if (qtest.isNull())
{