[poppler] Object management helper class
William Bader
williambader at hotmail.com
Sun May 29 23:52:29 UTC 2016
I think that anything to reduce the chance of memory issues is good, but you might risk support for older systems.
gcc-4.1.2 on RHEL5 does not have unique_ptr. gcc-4.4.4 on RHEL6 has unique_ptr.
William
> From: aacid at kde.org
> To: poppler at lists.freedesktop.org
> Date: Sun, 29 May 2016 22:57:13 +0200
> Subject: [poppler] Object management helper class
>
> Hi guys, related to the previous email about std::unique_ptr I think we would
> greatly benefit of a class that makes Object management easier.
>
> Again if you go and check https://bugs.freedesktop.org/attachment.cgi?
> id=124163 we're missing lots of free() and it's hard to prove we won't miss
> more.
>
> My suggestion is adding a class called UniqueObject (better name welcome)
> which will:
> * Call free on itself when it goes out of scope
> So we don't need to add .free() in every other if-chek-error-return
> * Call free on itself when you write on it
> So we can do
>
> dict->lookup("Decode", &obj1);
> if (obj1.isNull()) {
> dict->lookup("D", &obj1);
> }
>
> instead of
>
> dict->lookup("Decode", &obj1);
> if (obj1.isNull()) {
> obj1.free();
> dict->lookup("D", &obj1);
> }
>
> What do you think?
>
> Cheers,
> Albert
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/poppler/attachments/20160529/01bf5ad7/attachment.html>
More information about the poppler
mailing list