2
1
mirror of https://github.com/qpdf/qpdf.git synced 2024-06-04 11:20:53 +00:00
qpdf/libqpdf/QPDF_Reserved.cc
Jay Berkenbilt dba61da1bf Create a special "destroyed" type rather than using null
When a QPDF is destroyed, changing indirect objects to direct nulls
makes them effectively disappear silently when they sneak into other
places. Instead, we should treat this as an error. Adding a destroyed
object type makes this possible.
2022-09-08 10:36:39 -04:00

37 lines
664 B
C++

#include <qpdf/QPDF_Reserved.hh>
#include <stdexcept>
QPDF_Reserved::QPDF_Reserved() :
QPDFValue(::ot_reserved, "reserved")
{
}
std::shared_ptr<QPDFValueProxy>
QPDF_Reserved::create()
{
return do_create(new QPDF_Reserved());
}
std::shared_ptr<QPDFValueProxy>
QPDF_Reserved::shallowCopy()
{
return create();
}
std::string
QPDF_Reserved::unparse()
{
throw std::logic_error(
"QPDFObjectHandle: attempting to unparse a reserved object");
return "";
}
JSON
QPDF_Reserved::getJSON(int json_version)
{
throw std::logic_error(
"QPDFObjectHandle: attempting to get JSON from a reserved object");
return JSON::makeNull();
}