2
1
mirror of https://github.com/qpdf/qpdf.git synced 2024-12-22 19:08:59 +00:00

Refactor QPDFObjectHandle::unsafeShallowCopy

This commit is contained in:
m-holger 2022-11-14 18:03:03 +00:00 committed by Jay Berkenbilt
parent 0289b21c3b
commit d7b8525235
2 changed files with 4 additions and 14 deletions

View File

@ -1634,7 +1634,6 @@ class QPDFObjectHandle
bool first_level_only,
bool stop_at_streams);
void shallowCopyInternal1(QPDFObjectHandle& oh, bool first_level_only);
void shallowCopyInternal2(QPDFObjectHandle& oh);
void copyObject(
std::set<QPDFObjGen>& visited,
bool cross_indirect,

View File

@ -2298,20 +2298,11 @@ QPDFObjectHandle::copyObject1(
QPDFObjectHandle
QPDFObjectHandle::unsafeShallowCopy()
{
QPDFObjectHandle result;
shallowCopyInternal2(result);
return result;
}
void
QPDFObjectHandle::shallowCopyInternal2(QPDFObjectHandle& new_obj)
{
assertInitialized();
if (isStream()) {
throw std::runtime_error("attempt to make a shallow copy of a stream");
if (!dereference()) {
throw std::logic_error("operation attempted on uninitialized "
"QPDFObjectHandle");
}
new_obj = QPDFObjectHandle(obj->copy(true));
return QPDFObjectHandle(obj->copy(true));
}
void