Albert Astals Cid <[email protected]> writes: > 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?
Why do we need a new class? Wouldn't it be enough to call free in the Object destructor and init* methods? > Cheers, > Albert > _______________________________________________ > poppler mailing list > [email protected] > https://lists.freedesktop.org/mailman/listinfo/poppler -- Carlos Garcia Campos PGP key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x523E6462
signature.asc
Description: PGP signature
_______________________________________________ poppler mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/poppler
