summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update the component version for releaserelease/0.1.3Vincent Sanders2015-03-081-1/+1
|
* Ensure path generation does not overrun allocated storage.Vincent Sanders2015-01-151-6/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes bug #2251 which was caused by the svg: <svg width="11" height="11" id="support-entry-icon" y="3389"><g><g><path fill-rule="evenodd" clip-rule="evenodd" fill="#D6D6D6" d="M0,0v11h11V0H0z M10,10H1V1h9V10z M9,3H2v1h7V3z M9,5H2v1h7V5z M9,7H2v1h7V7z"/></g></g></svg> The svg was causing more path elements to be generated in the internal representation than space was allocated for and overrunning heap blocks. The path element parsing was using a fixed size allocation for the path elements and never bounds checked. Further it did not cope with zero length paths (which the spec says are permitted). It was also grossly overallocating for the common case. This changes the path element array to be bounds checked and then extended if required, the initial allocation is generally sufficient and in testing very few resizes occurred. The reallocation strategy grows the element storage by 2.5 each time this means even in the degenerate case very few reallocations are required. In testing no more than a single reallocation has been observed. The final path element array will always be reallocted to the minimum required size. This reduces overall memory usage which is useful with complex scenes.
* Update README to cover dependancies and core buildsystemVincent Sanders2014-12-073-47/+91
| | | | | Fix various issues with the test target and update the documentation to be more correct.
* Fix up for new buildsystemJohn-Mark Bell2014-11-161-2/+2
|
* fix parsing of whitespace in transform operatorsVincent Sanders2014-10-231-18/+18
| | | | | | | | The SVG spec for the transform attribute allows whitespace in places that were causing the %n specifier in the ssanf to return 0 as the match failed before it completed the parse. http://www.w3.org/TR/SVG/coords.html#TransformAttribute
* Fix relative move commands following a path close.Paul Mecklenburg2014-10-101-0/+7
| | | | | | | | | Both 'M' and 'm' are moves and therefore start a new (sub)path. In either case the location should be cached so that a later 'close path' (z or Z) knows the location it is returning to. The location is not written to 'p', since it is assumed that the client code remembers. If the next move is relative (lowercase), then it's important that last_x, last_y were correctly updated while processing Z/z.
* Add test case image for broken behaviour of relative move.Michael Drake2014-10-101-0/+8
|
* Update component version for releaserelease/0.1.2Vincent Sanders2014-08-261-1/+1
|
* Hopefully silence warnings about inlines and non inlines calling oneDaniel Silverstone2014-04-261-0/+9
| | | | another.
* Update component version for releaserelease/0.1.1Vincent Sanders2014-04-181-1/+1
|
* Add support for multilibJohn-Mark Bell2014-01-132-3/+3
|
* Fix to use list_size accessor.Michael Drake2013-08-231-1/+1
|
* Minor tidyup.Michael Drake2013-08-231-10/+7
|
* Move gradient logging to svgtiny_gradient.c, and suppress when not debugging ↵Michael Drake2013-08-232-2/+5
| | | | gradients.
* Fix leak of gradient dom strings.Michael Drake2013-08-231-35/+189
|
* Suppress most gradient debug.Michael Drake2013-08-221-0/+18
|
* update component version for releaserelease/0.1.0Vincent Sanders2013-04-191-1/+1
|
* add a .gitattributes so .gitignore is not exportedVincent Sanders2013-04-181-0/+2
|
* Explicitly check if r0 or r1 are NaN, as if they are, on x86 the function ↵Chris Young2013-01-051-1/+7
| | | | evaluates as 0 (which is already handled), but on PPC the function evaluates to a negative value, causing the following for loop to become infinite.
* Handle empty text nodes correctly.John-Mark Bell2012-12-311-3/+7
|
* Drop const, as this can't work with libdom.John-Mark Bell2012-12-301-6/+6
|
* correct target nameChris Young2012-11-271-1/+1
|
* Replace dom_string_length with dom_string_byte_length -- faster and more correctDaniel Silverstone2012-11-032-23/+12
|
* Void myself unpleasantly in order to satisfy RISC OS toolchainDaniel Silverstone2012-11-032-3/+5
|
* Clean up properlyDaniel Silverstone2012-11-031-1/+9
|
* Fix up pkgconfigDaniel Silverstone2012-11-031-1/+1
|
* Merge branch 'dsilvers/tolibdom'Daniel Silverstone2012-11-0310-341/+1483
|\
| * Convert the last bits for libdomdsilvers/tolibdomDaniel Silverstone2012-11-032-6/+7
| |
| * The library now buildsDaniel Silverstone2012-11-035-75/+163
| |
| * More work towards libdom conversionDaniel Silverstone2012-11-034-118/+173
| |
| * Parse textDaniel Silverstone2012-11-032-19/+67
| |
| * Make more svg elements parse againDaniel Silverstone2012-11-033-59/+139
| |
| * More work to bring svgtiny into the libdom eraDaniel Silverstone2012-11-033-53/+138
| |
| * Ignore ~ filesDaniel Silverstone2012-11-031-0/+1
| |
| * Begin conversion to libdomDaniel Silverstone2012-11-034-55/+108
| |
| * Add an example SVG and a gitignoreDaniel Silverstone2012-11-032-0/+731
|/
* Update to new NSBUILD infrastructureDaniel Silverstone2012-06-293-4/+6
| | | | svn path=/trunk/libsvgtiny/; revision=14010
* Bump version numberVincent Sanders2012-02-271-1/+1
| | | | svn path=/trunk/libsvgtiny/; revision=13487
* Don't treat warnings as errors on AmigaOSChris Young2011-09-281-1/+2
| | | | svn path=/trunk/libsvgtiny/; revision=12908
* sed in BeOS still doesn't handle -i, so use a temporary file since RiscOS ↵François Revel2011-03-211-2/+3
| | | | | | doesn't know pipes. svn path=/trunk/libsvgtiny/; revision=12121
* s/strndup/svgtiny_strndupJohn Mark Bell2011-01-022-2/+3
| | | | svn path=/trunk/libsvgtiny/; revision=11186
* Use built-in strndup if the platform we're targetting doesn't have oneJohn Mark Bell2010-12-293-2/+26
| | | | svn path=/trunk/libsvgtiny/; revision=11140
* Split the string for stroke-width like it's done for the other attributes so ↵James Bursa2010-09-241-1/+3
| | | | | | svgtiny_parse_length doesn't get confused about the remainder of the string. Contributed by Peter Korsgaard. svn path=/trunk/libsvgtiny/; revision=10837
* Add an example of using libsvgtiny. Displays an SVG using X11 and cairo.James Bursa2010-01-101-0/+444
| | | | svn path=/trunk/libsvgtiny/; revision=9800
* For BeOS libxml2 is not part of the default devkit, try to find headers ↵François Revel2010-01-031-0/+3
| | | | | | elsewhere. svn path=/trunk/libsvgtiny/; revision=9785
* More of the C89... really do test it please!François Revel2010-01-021-37/+59
| | | | svn path=/trunk/libsvgtiny/; revision=9772
* Lots of C89, please test...François Revel2010-01-021-29/+57
| | | | svn path=/trunk/libsvgtiny/; revision=9771
* C89: Fix for gcc2 "warning: comma at end of enumerator list".François Revel2010-01-021-2/+2
| | | | svn path=/trunk/libsvgtiny/; revision=9770
* Round stroke widths to nearest integer instead of down, and force to 1 if it ↵James Bursa2009-11-281-2/+4
| | | | | | would be rounded to 0. svn path=/trunk/libsvgtiny/; revision=9707
* Implement <ellipse> element. Improve error handling for <circle>.James Bursa2009-11-281-18/+109
| | | | svn path=/trunk/libsvgtiny/; revision=9706