From d33e5a9ccd9daface1e5cc9dc744d86df674ddfe Mon Sep 17 00:00:00 2001 From: m-holger Date: Fri, 7 Nov 2025 16:41:06 +0000 Subject: [PATCH] Refactor QPDFFormFieldObjectHelper: simplify Members handling by using std::shared_ptr and forward declaration. --- include/qpdf/QPDFFormFieldObjectHelper.hh | 12 +----------- libqpdf/QPDFFormFieldObjectHelper.cc | 10 ++++++++-- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/include/qpdf/QPDFFormFieldObjectHelper.hh b/include/qpdf/QPDFFormFieldObjectHelper.hh index 6309d5e..b92114e 100644 --- a/include/qpdf/QPDFFormFieldObjectHelper.hh +++ b/include/qpdf/QPDFFormFieldObjectHelper.hh @@ -193,17 +193,7 @@ class QPDFFormFieldObjectHelper: public QPDFObjectHelper void generateTextAppearance(QPDFAnnotationObjectHelper&); QPDFObjectHandle getFontFromResource(QPDFObjectHandle resources, std::string const& font_name); - class Members - { - friend class QPDFFormFieldObjectHelper; - - public: - ~Members() = default; - - private: - Members() = default; - Members(Members const&) = delete; - }; + class Members; std::shared_ptr m; }; diff --git a/libqpdf/QPDFFormFieldObjectHelper.cc b/libqpdf/QPDFFormFieldObjectHelper.cc index 2dd2eea..de16556 100644 --- a/libqpdf/QPDFFormFieldObjectHelper.cc +++ b/libqpdf/QPDFFormFieldObjectHelper.cc @@ -10,17 +10,23 @@ #include #include +#include + using namespace qpdf; +class QPDFFormFieldObjectHelper::Members +{ +}; + QPDFFormFieldObjectHelper::QPDFFormFieldObjectHelper(QPDFObjectHandle oh) : QPDFObjectHelper(oh), - m(new Members()) + m(std::make_shared()) { } QPDFFormFieldObjectHelper::QPDFFormFieldObjectHelper() : QPDFObjectHelper(QPDFObjectHandle::newNull()), - m(new Members()) + m(std::make_shared()) { } -- libgit2 0.21.4