[poppler] [PATCH] ~10% speedup for loading/parsing a
PDF file through simple GooString optimization
Leonard Rosenthol
leonardr at pdfsages.com
Mon Aug 14 09:01:56 PDT 2006
At 10:37 AM 8/14/2006, Reece Dunn wrote:
> > What about using a smart pointer? Something as simple as
> > std::auto_ptr<> for a start - or possibly going all the way to
> > boost::shared_ptr<>.
>
>These won't work as you need to call Object::release()
No you don't. That's all automatic in the destructor -
EXACTLY what you want. Go check it out ;).
>I have made several attempts at cleaning up the XPDF codebase
>as it does not make use of the C++ library (GooString vs. std::string,
>GooList vs. std::list, qsort vs. std::sort),
Yes, that's painful indeed. However, can we safely assume
that all platforms on which Poppler would be used (including
embedded) are up to date?
> uses goto for resource
>cleanup instead of RAII (Resource Aquisition Is Initialization - i.e.
>constructors aquire a resource, destructors clean that resource up),
>etc.
Yeah, it makes for VERY ugly code...
>Q: Is there any point in having GBool/gTrue/gFalse now since only
>the very ancient of C++ compilers don't support bool/true/false?
See above.
LDR
---------------------------------------------------------------------------
Leonard Rosenthol <mailto:leonardr at pdfsages.com>
Chief Technical Officer <http://www.pdfsages.com>
PDF Sages, Inc. 215-938-7080 (voice)
215-938-0880 (fax)
More information about the poppler
mailing list