Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix build with certain C libraries. | Michael Drake | 2015-11-01 | 1 | -1/+1 |
| | |||||
* | Fix reallocation of path buffer length to cope with differng path lengths | Vincent Sanders | 2015-08-23 | 1 | -21/+41 |
| | |||||
* | Ensure path generation does not overrun allocated storage. | Vincent Sanders | 2015-01-15 | 1 | -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. | ||||
* | fix parsing of whitespace in transform operators | Vincent Sanders | 2014-10-23 | 1 | -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 Mecklenburg | 2014-10-10 | 1 | -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. | ||||
* | Hopefully silence warnings about inlines and non inlines calling one | Daniel Silverstone | 2014-04-26 | 1 | -0/+9 |
| | | | | another. | ||||
* | Fix to use list_size accessor. | Michael Drake | 2013-08-23 | 1 | -1/+1 |
| | |||||
* | Minor tidyup. | Michael Drake | 2013-08-23 | 1 | -10/+7 |
| | |||||
* | Move gradient logging to svgtiny_gradient.c, and suppress when not debugging ↵ | Michael Drake | 2013-08-23 | 2 | -2/+5 |
| | | | | gradients. | ||||
* | Fix leak of gradient dom strings. | Michael Drake | 2013-08-23 | 1 | -35/+189 |
| | |||||
* | Suppress most gradient debug. | Michael Drake | 2013-08-22 | 1 | -0/+18 |
| | |||||
* | Explicitly check if r0 or r1 are NaN, as if they are, on x86 the function ↵ | Chris Young | 2013-01-05 | 1 | -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 Bell | 2012-12-31 | 1 | -3/+7 |
| | |||||
* | Drop const, as this can't work with libdom. | John-Mark Bell | 2012-12-30 | 1 | -6/+6 |
| | |||||
* | Replace dom_string_length with dom_string_byte_length -- faster and more correct | Daniel Silverstone | 2012-11-03 | 2 | -23/+12 |
| | |||||
* | Void myself unpleasantly in order to satisfy RISC OS toolchain | Daniel Silverstone | 2012-11-03 | 2 | -3/+5 |
| | |||||
* | Clean up properly | Daniel Silverstone | 2012-11-03 | 1 | -1/+9 |
| | |||||
* | The library now builds | Daniel Silverstone | 2012-11-03 | 5 | -75/+163 |
| | |||||
* | More work towards libdom conversion | Daniel Silverstone | 2012-11-03 | 4 | -118/+173 |
| | |||||
* | Parse text | Daniel Silverstone | 2012-11-03 | 2 | -19/+67 |
| | |||||
* | Make more svg elements parse again | Daniel Silverstone | 2012-11-03 | 3 | -59/+139 |
| | |||||
* | More work to bring svgtiny into the libdom era | Daniel Silverstone | 2012-11-03 | 3 | -53/+138 |
| | |||||
* | Begin conversion to libdom | Daniel Silverstone | 2012-11-03 | 2 | -44/+102 |
| | |||||
* | Update to new NSBUILD infrastructure | Daniel Silverstone | 2012-06-29 | 1 | -1/+1 |
| | | | | svn path=/trunk/libsvgtiny/; revision=14010 | ||||
* | sed in BeOS still doesn't handle -i, so use a temporary file since RiscOS ↵ | François Revel | 2011-03-21 | 1 | -2/+3 |
| | | | | | | doesn't know pipes. svn path=/trunk/libsvgtiny/; revision=12121 | ||||
* | s/strndup/svgtiny_strndup | John Mark Bell | 2011-01-02 | 2 | -2/+3 |
| | | | | svn path=/trunk/libsvgtiny/; revision=11186 | ||||
* | Use built-in strndup if the platform we're targetting doesn't have one | John Mark Bell | 2010-12-29 | 3 | -2/+26 |
| | | | | svn path=/trunk/libsvgtiny/; revision=11140 | ||||
* | Split the string for stroke-width like it's done for the other attributes so ↵ | James Bursa | 2010-09-24 | 1 | -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 | ||||
* | More of the C89... really do test it please! | François Revel | 2010-01-02 | 1 | -37/+59 |
| | | | | svn path=/trunk/libsvgtiny/; revision=9772 | ||||
* | Lots of C89, please test... | François Revel | 2010-01-02 | 1 | -29/+57 |
| | | | | svn path=/trunk/libsvgtiny/; revision=9771 | ||||
* | Round stroke widths to nearest integer instead of down, and force to 1 if it ↵ | James Bursa | 2009-11-28 | 1 | -2/+4 |
| | | | | | | would be rounded to 0. svn path=/trunk/libsvgtiny/; revision=9707 | ||||
* | Implement <ellipse> element. Improve error handling for <circle>. | James Bursa | 2009-11-28 | 1 | -18/+109 |
| | | | | svn path=/trunk/libsvgtiny/; revision=9706 | ||||
* | Despite M_PI being #defined in math.h, and math.h being #included, in certain | Chris Young | 2009-11-22 | 1 | -0/+3 |
| | | | | | | circumstances it doesn't get #defined. Catch this. svn path=/trunk/libsvgtiny/; revision=9701 | ||||
* | Start implementing arcs in paths. Fix crash when an empty path has a ↵ | James Bursa | 2009-11-22 | 1 | -2/+27 |
| | | | | | | gradient fill. svn path=/trunk/libsvgtiny/; revision=9682 | ||||
* | gperf -> .c rule. This isn't in the core buildsystem as nothing else ↵ | John Mark Bell | 2009-08-24 | 1 | -0/+8 |
| | | | | | | requires this. We can migrate it when needed. svn path=/trunk/libsvgtiny/; revision=9425 | ||||
* | Squash warnings | John Mark Bell | 2009-08-24 | 3 | -4/+13 |
| | | | | svn path=/trunk/libsvgtiny/; revision=9423 | ||||
* | Missed makefile | John Mark Bell | 2009-08-24 | 1 | -0/+4 |
| | | | | svn path=/trunk/libsvgtiny/; revision=9422 | ||||
* | Beginnings of port to core buildsystem | John Mark Bell | 2009-08-24 | 5 | -0/+2105 |
svn path=/trunk/libsvgtiny/; revision=9419 |