CHANGES:
0.8.8 - 0.8.9
- Fix http://qa.openoffice.org/issues/show_bug.cgi?id=74134, a bug in WP1 document
type detection where we could try to seek to a negative place in document (Fridrich)
- Fix a regression wrt. 0.8.7 preventing the conversion of tab table in
WP1 and WP3 file-format (Fridrich)
- Fixed several overflow bugs reported by iDefense. An attacker could create a
carefully crafted Word Perfect file that could cause an application linked with
libwpd, such as OpenOffice, to crash or possibly execute arbitrary code if the
file was opened by a victim. (CVE-2007-0002) (iDefense's Sean Larsson, Fridrich)
0.8.7 - 0.8.8
- Add unit tests for the stream class (Fridrich & Andrew Ziem)
- Ignore foot/endnotes that are referenced inside other foot/endnotes (Fridrich);
fixes http://www.openoffice.org/issues/show_bug.cgi?id=71487
- Handle graciously unsupported password-protected documents; (Fridrich)
fixes http://www.openoffice.org/issues/show_bug.cgi?id=72307
- Remove warnings on main OpenOffice.org platforms (Fridrich)
- Remove some potential memory leaks in the WPXPropertyList class and optimize
the WPXPropertyList subscription operator (Fridrich)
- When possible, pass WPXStrings by reference instead of passing them by copy
(Fridrich)
- Refactor WPXString to not cast from and to void*; refactor WPXPropertyList and
WPXPropertyListVector classes as to save a bunch of virtual calls (Fridrich)
CHANGES:
0.8.6 - 0.8.7
- Revert the alignment fix, in order to mimick the way WP for Mac renders
the documents (Fridrich)
- Support for WP Mac 1.x documents (Fridrich)
- Fix memory leak in standalone converters (Andrew Ziem)
- Miscellaneous code cleanups (Fridrich)
0.8.5 -> 0.8.6
- Initial support of WP Mac 2.x documents (Fridrich)
- Fix an alignment bug where alignment was propagated from multicolumn
sections into following single column sections (Fridrich)
- Initial conversion of headers/footers in WP42 parser (Fridrich)
- Fix some parser errors in WP42 parser; now we seek to the right place
and parse correctly all functions (Fridrich)
- Fixed crash in wpd2foo if invoked with non-existing filename (Jody Goldberg)
- Assure that the table we send to the listener implementation is a valid
table independent of how messy the table is in the WP document (Fridrich)
- Fix situations where there is no tab position information in WPUs inside
the tabulator function; the fallback works now even if the position is 0
like in WP6 for DOS documents.
- Try not to crash under any circumstance by sanitizing the code and throwing
exception in illogical, but in WP documents very real, situations (sum1,
Fridrich)
- Make every implementation of WPXInputStream that we use return !0 if a seek
fails; be more paranoiac with the result of read functions (sum1, Fridrich)
- Ignore corrupted prefix packets in WP5 documents (Fridrich)
- Try to convert as much information as possible even in corrupted WP3, WP5 and
WP6 documents (Fridrich) - Libwpd now converts many documents that make crash
WordPerfect itself.
- Fine-tune the WP42 document detection. Detect as many WP42 files as possible
while still discarding plain text documents (Fridrich, Marc)
- Let the WP6 parser not die if the prefix packet it refers to is corrupted or
absent (Fridrich)
- Fix hangs while parsing a corrupted WP6ExtendedDocumentSummaryPacket (sum1,
Fridrich)
- General improvement of libwpd's conversion-success-rate and extensive QA with
more than 46'000 real life documents (Mr. SUM1)
0.8.4 -> 0.8.5
- Conversion of font face, size and colour in WP5 parser, including the
default font information (Fridrich)
- Conversion of foot/endnotes in WP5.x format (Fridrich)
- Conversion of headers/footers in WP3 and WP5 parsers (Fridrich)
- Prevent negative paragraph margins due to page margin change.
Removes the ugly text-border lines running across the text in
OpenOffice.org (Fridrich)
- Make page margins constant between two hard page breaks (Fridrich)
- Convert page margin changes into section margins in multi-column sections
- Move absolute position values in multicolumn sections from whatever column
they are in into the first one. Fixes the off-page position of the second
table in 05mechanicalservice.wpd (Fridrich)
- Defer page span change to the end of the current paragraph if it is
opened in order to prevent a paragraph break where it is not there in the
original document (Fridrich)
- Fix http://bugzilla.abisource.com/show_bug.cgi?id=10105, an incorrect
conversion of table alignment in WP3.x file format (Fridrich)
- Fix small issue with incorrect number of pages in page-spans (Fridrich)
- Fix an issue with "==" operator for WPXPageSpan classes. The result is now
the same independent on the order of the operands (Fridrich)
- Fix http://bugzilla.abisource.com/show_bug.cgi?id=10279, a crash if a table
from the middle of the tableList is in footnote and/or endnote (Marc, Fridrich)
- Add an option "--info" to wpd2text; called with this option, wpd2text dumps the
information of the document instead of converting it. This could be useful for
beagle (Fridrich)
- Refactoring of the listener structure and split of WPXListener into WPXContentListener
and WPXStylesListener (Fridrich, Marc and Cyrille Moureaux as a guest star)
since they always need a C compiler, even when the source code is
completely in C++.
For some other packages, stated in the comment that a C compiler is
really not needed.
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
- Fix compilation with gcc >= 4.1.0
- Initial support for tables in WP5.x format
- Fix compilation on MacOSX
- Conversion of font name, size and colour for WP3.x format
- Collapse the LL and HL Listeners into one classe each
- Initial support of tables in WP3.x format including the cell background
colour
- Conversion of sections with multiple columns in WP3.x format
- Conversion of foot/endnotes in WP3.x format
- Adding an assignment operator to WPXString class as well as trying
to make it much more a std::string wrapper
From Jeremy Reed in pkgsrc-wip, updated to 0.8.1 by me.
libwpd is a library for reading and writing WordPerfect(tm)
documents.
This package also includes utilities for converting to HTML
and plain text.