libvisio 0.1.5
- Rewrite text output to avoid empty spans and to make the function
a bit more readable for common mortal (wo)man.
- Initial emulation of line rounding property (tdf#90603).
- Make --help output of all command line tools more help2man-friendly.
libvisio 0.1.4
- Implement overriding of colour of lines and of text from layer
properties (tdf#50309, tdf#68392) and the visibility and/or
printability of a layer.
- Fix incorrect handling of stencil text (tdf#90154).
- Basic initial implementation of hatch fill (tdf#44552, tdf#76835).
- Implement support of bullets/lists (tdf#92349)
- Implement support of default tab-stops and custom tab-sets in
paragraph properties.
- Fix for reading of names of pages if present.
- Fix build with boost 1.59.
- Instead of line-break, spit out a new paragraph when a paragraph break
is found
Problems found with existing distfile:
distfiles/libiconv-1.13-cp932.patch.gz
No changes made to the libiconv distinfo file.
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
libvisio 0.1.3
- Fix a build failure with some compilers.
- Do not use C++11 syntax.
libvisio 0.1.2
- Fix several build problems with different compilers.
- Import more metadata properties.
- Fix theme color import (tdf#92270).
- Fix a bunch of crashes and hangs when reading broken documents, found
with the help of american-fuzzy-lop.
- Fix several memory leaks.
- Ignore errors when parsing metadata. This makes some documents readable
again.
- Fix handling of character background (tdf#92271).
libvisio 0.1.1
- Fix a minor issue reported by Coverity.
- Check arguments of public functions. Passing NULL no longer causes
a crash.
- Set a minimal thickness for arrow markers to ensure they are visible.
- Fix a crash when reading a broken file, found with the help of
american-fuzzy-lop.
- Use symbol visibility on Linux. The library only exports the two public
functions now.
- Import document metadata (fdo#86664).
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
Bump version in view of a possible release
When cached fg and bg colours are 0, trust index more
coverity: copying uninitialized value
coverity: do not let VisioDocument::parse throw
coverity: drop duplicated code
coverity: consistently check ret. value of read*Data
Trying to support initially Text Fields
Fixed line height is in inches :(
Bump version
Trying to unify the stencil extraction and the other parsing function
Those ones don't need to be virtual anymore
Unify all VSD2 - VSD5 in one parser
Unify blob parsing over binary format versions
Unsigned signed comparison
Little fixup
handle blog in the same way for all <= 5
Bump version, because I can
Field List is a list too
Fix background page detection for versions < 6
Simplify the inheritance a little bit
Fix foreign in VSD 5-
Some fixes for line and fill styles
Some colour reading fixes for VSD <= 2
Fix stencil extraction for vsd <= 5
Miscellaneous fixes + text for VSD <= 5
Consider correctly the font encoding information
Vertical alignment in center is default in Visio
Trying to read the blob in the same way in all 16-bit versions
Spit actual images in VSD1
Some more work on VSD1 and VSD2 parsing + some stream fixes
Some more progress on version 5
Read VSD5 fill and line information
Remove the generated files only on distclean
Typedefs for MSVC
Abstraction of reading of integers
Some progress in VSD5 parsing
Some more work on vsd1/2/3/4/5
Some more VSD2 - VSD5 infrastructure - work in progress
Some more chunk work, but slow
Setting framework for different parsing of v5 and v2
Set groundwork for vsd5 and lower chunk parsing
Extend the parsing capacity to versions 1 - 5
Don't crash on empty or almost empty pointer order list
Detect non-OLE binary Visio documents
Fix warning C4244
´initializing´ : conversion from ´double´ to ´unsigned char´, possible loss of data
Some more work on VSD5 parser
Allow the parser to parse VSD4 and VSD5 + read pointers in < 6 correctly
Fix underlinking with gold.
Fix a memory leak
Fix extraction of stencils from xml file-formats
Fix scope of the variable 'X' can be reduced
Missing include for older compilers
Silence some warnings
Allow specifying boost include directory too
Add libxml2 include and library directories
Add the Visual Studio 2010 files
Those don't need to be executable
Add Visual Studio 2008 files
Like in libcdr, detect each pkg-config dependency separately
Fill missing char/para style only with legitimate default styles
Default para/char style is first para/char style if no style 0 is present + fill inexisting styles from default
Collect default para/char styles
Don't overwrite charCount on style override
Functions to reset charCount in char/para styles and a function to get a char/para list level
Make charCount non-optional in paragraph styles
Make charCount non-optional in character styles
Fix some typos in the VSDXParser
Actually the relative beziers give control points
Update alternative build systems
Some infrastructure for overriding of character and paragraph styles
Let parser recover on errors
Whitespace is significant in this context
Clean page shape list at the beginning of a page
A horrible typo that takes hours to discover :)
Consolidate the way of reading font information
A little work on text block styles
VDX: actually read the text block properties
Only one charlist and paralist can be in a shape
Override paragraph and character lists
Read TextXForm data too
Calm valgrind
Don't handle utf-8 as ansi + try to not run out of bounds
Don't prefill the stencil text
Actually output some text
Trying to parse text in XML parsers
Extract IX reading to a function
Stub ParaIX and CharIX reading in VDX and VSDX parsers
Read the stylesheet in second pass
Initialize the default colour palette even if no colour section exists in file
In a generic way skip unhandled sections
inheritance of the styles is handled in the collectors
Skip useless sections instead of diving into them
default excentricity cannot be 0
Some more boost::optional foo
Simplify the reading of data to reuse as much as one can
NURBS and Polyline support for VDX and VSDX
Stub the parsing of polyline and nurbs functions
Move more stuff to boost::optional
unify some stuff between the VSDX and VDX parsers
boost::optional::is_initialized is deprecated
Fix a typo
If there are both Master and MasterShape attributes missing, it is simply master-less shape
Removing unused fill-related variables
Refactoring the fill style output
Remove unused member variables
Simplify the function handling line styles
A little change in style outputting, still more to come when time allows
Fix showing of foregins + write styles only if needed
All styles pushed using optional styles
Allow getting optional styles from the stylesheets
Don't default-construct black backgrounds
Don't append double Z segment and assure that ellipse is always closed
Don't draw markers on closed path segments
No point to dupplicate code in two different functions
Consider also styles ids 0
A little refactoring of styles in VSDContentCollector
add override for optional styles too
readUnsignedCharData -> readByteData + move a bit
Move the getColourString to a better place
No need for a whole template for 2 sorts
Actually disables -Weffc++ when requested
Pass more properties as boost::optional
pass the noLine, noFill, noShow to boost::optional too
Some more path elements using boost::optional
Pass some of the attribute reading to boost::optional
VDX overrides geometries the same way as VSD, VSDX overrides only what needs to be overridden
The common class can have those two data members
Try to fill the first 24 colour values
Implement empty geometry element to handle deleted segments like a big boy
Shadow offset for Y-axis must be inverted
Assure that the geometry elements will be always output sorted by keys + fix leak
Fix some little problems in the VDX and VSDX parsers
Trying to fix the extended colour reading
Try to detect when the shape is not started
Determine the first stencil shape correctly
Clean up reading of VSDX shape properties.
Remove uninitialised variable compiler warning.
Read byte from VSDX XML string.
For use with VSDX values of type PtgByte (unsigned byte).
Some fixes in colour
Some infrastructure to parse the relative geometry rows
Simplify the styles a bit
Simplify the styles code a bit
Some work on styles
Some wireframe output for VDX and VSDX parsers
Parsing line, fill and text block information in VSDXParser
Convenience pointer to access the current geometry list
Prefill shape's m_geometries from stencil
m_geometries being a map
Make the test documents in VSDX and VDX parsers pass
Fix one hang in VSDX parser
Basic support of raster images in VDX and VSDX parser
Try not to crash in XML based parsers
_flushShape for VDXParser too
_flushShape uses member variable anyway
Add Foreign reading functions
Add some readability
Read the xform directly to the shape structure
Some work on the xml-based parsers
Slight modification of the base 64 decoder
addShapeId when shapes document order is their rendering order
Append WPXBinaryData from a base64 encoded string
Flush all shape information to the collectors in one run/function
Use different shapeLists for page shapes and group shapes
send shapesOrder only if it is not empty
Flush shapes order whenever we know it
Add m_shapeList member to VSDShape
First check for non-empty and then look for top()
Adapt collectors to the information that will be available from VDX and VSDX parsers too
Remove some leaks
VSDParser: use more of the VSDShape internals to keep information
Implement VSDShape::clear()
Get rid of m_fieldList
Revert a part that creates more problems then it solves
If a key is not found in a map, operator[] default-constructs an element and returns its reference
Trying to improve the field-related code
Some fixes of fields and line-breaks
Try to pass to the collectors the shape at once
Some little improvements
A bit more of simplification
Avoid dynamic_cast
Don't add empty geometries
Trying to refactor a bit more
Fix debug build
Diminish pointer use a bit
Fix possible uninitialized variables
More VSDParser refactoring
Try to finalize the _flushShape function
Some constness changes
Store some more stuff in the VSDShape object
Some more styles passing simplification
Simplify the passing of line and fill information
Simplify the collectXFormData and collectTxtXform functions a bit
Some more simplification of the VSDParser
Simplyfy handling of shapes a bit
m_stencilShape -> m_shape
Access directly the stencil shape using master page and shape IDs
VSDStencilShape -> VSDShape
Some cppcheck cleaning
Some more configurability about warnings
Some more readability an error-proof changes
This is a bit more readable
Add stencil xform and txtxform
Try to start to parse shapes
Don't pass geomFlags to the collectors
Don't crash on invalid namespace uris in SolutionXML elements
Don't abort on themed values
Try to unify stuff into a common XML parser base
Simplify a bit
Output pages in VSDXParser too
Handle normal and background pages differently
Read the information about background page in VDX files too
Pass to collectors information about background page
Detect a background page early
Include VSDXMLTokenMap.h in the VSDXParser and move the later into the libtokenmap helper library
Some framework for VSDX parser
And also fix some bugs, so that regression suite is happy
Pass the transparency to collectors as double
VDX: Output now finally empty pages with the right sizes
Make the VSD parser a bit more robust
- Some documents can have empty groups/shapes, so handle that
graciously.
- Only wrap by try block the reading part, not the whole nested
function calls in order not to handle exceptions thrown by other
functions.
Our assumptions about stream formats are a bit fragile, so don't fail if we are not right
Simplifying a bit the colour stuff
Rewriting the collectors to be more useful for VDX too
VDX: parse xform data
Parse VDX TextBlock properties
Add a token id
Parse VDX fill and line properties
Some more VDX parser stuff
Start to parse the font and colour list in VDX parser
Add all VDX elements
For security, check for sed
Export only useful functions + speed-up rebuild when tokens change
Setting up a hash framework for intelligent work with xml tokens
requires gperf >= 3.0.0 at build time
Try to avoid memory management of libxml2 strings as much as possible
Allow building against older libwpd-stream, but without performance boost
Set a custom error handler for xmlTextReader
Speed-up zip central directory search, but depend on git version of libwpd
Add BIPU VDX parser
Extract binary data streams pointed by <Rel .../> tags too
Flatten the xml that reader functions have to read by following the <Rel .../> tags
Adapting alternative build systems
Add VDX typedetection
Spin off the XML stuff in view of VDX support
Simplify a bit the VSDXParser
Clean up the paths pushed to the API
Suck in the collectors to the VSDX picture
Find a way to rebase the targets just after reading of the relationships
Some more relationship and stream parsing boilerplate
Add function to get relationships stream for a target
Visio 2013: Parse OPC relationships and make the typedetection a bit more serious
Some BIPU typedetection for vsdx + some parser boilerplate
Stub the VSDX parser
pointless whitespace cleanup to increase my commit count
Updating the alternative build systems too
Prepare for the new VSDX file-format (ooxml version)
fix reassignment a value before the old one has been used
Don't output the last line break in a paragraph
Prevent automake warnings
Trying to output line breaks that are not paragraph breaks
Some initial handling of 0x0* type of streams
Bump version so that one can detect the presence of the new stencil parser
BIPU vss2* support
Initial stencils extraction
set WPXParser::m_extractStencils to true in order to get
stencil pages instead of normal pages
Trying to unversalize the parser
Extract chunk reader logic in order to reuse with blobs
Trully implement 'level continuum'
Simplify a bit the code
Revert "Implement 'level continuum'"
This reverts commit e44063e93b8f0ff9bcd62a26e91045192030773a.
Implement 'level continuum'
Little tiny cleanup
Those streams are blobs, and we will not descend them, so return -> break for consistency
Getting rid of handleForeignOle
Get rid of handleStencilForeign function
Move handleStencilPage to handleStream
Unify a bit the logic of different stream parser functions
Bump version to 0.0.19
Fixing fdo#50990
reuse m_currentShapeLevel for stylesheets too
Another tiny incremental change
A little refactoring of the level change handling
Order of pages is their order of arrival
Revert "Drawing pages in right order"
This modification is not needed anymore, since we approach
the reordering of pointers differently
This reverts commit 9371595a11a0858fc55ea9fce67dba12b39a6e3e.
Reorder pointers to streams according to the list
Handle 0x8* and 0xd* streams in an equivalent way
Push information to collector even from streams if that is where it is to be found
Keep pointer numbers around
Get rid of handleStencils + some fixes in styles
Clear font name before appending to it
Get rid of handlePages function
Removing unused constructor
Recursive parsing of streams implemented
Not giving any output as of yet though. Please, use STABLE-0-0-0 branch
if you want to see pictures. I will merge this one there only after
regression test calls me "good boy".
Little correction
Unify handling of chunks in stencils and normal pages
Some more refactoring
Extracting individual stream handling into a separate function
Extract handling of streams into a separate function
astyle
Fix endless loop with text fields in VSD6
Appease automake 1.12
!=, not ==
coverity: protect against self-assignment
coverity: protect against self-assignment
coverity: protect against self-assignment
coverity: memory leak
coverity: bin superfluous copy ctors
coverity: bin superfluous copy ctor
coverity: bin superfluous copy ctors
Disable optimization in debug build
Fix prefix ++/-- operators for non-primitive types
This langid does not make sense and we don't even use it
Trying to make encoding work in version 6
Sync this with libcdr
Fix utf16 parsing
Some more rework of text encoding conversions
Some character conversion rework + some debug messages
Some belts and braces
Related: fdo#48601 FILEOPEN: Open Visio's file with bitmap's blocks
This fdo contains 2 files with which I had a different crash for each of them.
This patch fixes one of the 2 crashes.
For the moment no more cppcheck reports
Resolves: fdo#50988
bumping version
Fix another crash in exotic circumstances
And make it even compile
Don't push_back(.back())
Fix some crashes on windows
And produce a valid xml too
Avoid SVG crash for missing svg:id
Make the thing even build
Break line only at the end of the line
Add vsd2text tool to dump text from Visio diagrams
More warnings to be safer later
Unused variable
Resolves: fdo#50178 Reading Visio file causes crash
include stdint.h and inttypes.h inconditionally in no-autofoo no-windows build
Group the filled and stroked paths that are part of the same geometry
A better fix that does not alter Bruno's work
Adapt the end and start line markers to recent changes of svg:d in LO
Read longer integers in one run
A bit more of sanity
tabs -> spaces
Consider svg:x, svg:y, svg:width, svg:height separately
Generate SVG for bitmap fill
if asked for emtpy, don't use size