I fixed the two-equal-points-crashes-xournal bug (in my repository,
branch line-widths-optimized). I did not yet do anything about the
"-nan" issue.
Immi
Am 06.10.2016 um 20:51 schrieb Denis Auroux:
> Interesting. Neither of the issues causes the stable/upstream xournal to
> crash, though :)
>
> The stroke with just two points at the same location is the problem I
> was looking for and Immi confirmed -- the solution is simple: in the
> loading code, when Immi tests whether the first two points of the stroke
> are equal (and then chops off one and interprets it as new-style
> variable-width), he should also be testing whether the stroke has at
> least 3 points (and otherwise not chop off anything).
> (Or we could discard such segments altogether, but the backwards
> compatible behavior would be to keep a dot).
>
> I didn't look any further -- but the nan's are very interesting too. I
> believe that over the years I've added various protections against input
> events that come at nan or infinite coordinates -- so I'm under the
> impression that xournal-upstream should load them without
> complaining/crashing (I forgot what we do with them though) but also
> should never create such strokes (because the "nan" or infinity should
> be caught before we insert such coordinates into the journal's data
> structures). [However, perhaps rescaling a selection by an infinite
> factor could create such data? If someone managed to create a size zero
> selection rectangle that encloses a single-point stroke?? Seems
> unlikely. Or did the file somehow originate from an older version of
> xournal that wasn't careful about infinities/nan's in input coordinates ?]
>
> Anyway, I have no idea where the nan's came from. They shouldn't be
> there. I don't know if they are there because of some edge case I didn't
> think of already in upstream, or because of a feature in next. But we
> should accept them without crashing...
>
> Best,
> Denis
>
>
>
> On 10/06/2016 02:11 PM, dmg wrote:
>> There seem to be multiple issues with the document. This mini-xournal
>> file crashes xournal:
>>
>> <?xml version="1.0" standalone="no"?>
>> <xournal version="0.4.8">
>> <title>Xournal document - see
>> http://math.mit.edu/~auroux/software/xournal/</title>
>> <page width="595.29" height="841.89">
>> <layer>
>> <stroke tool="pen" color="red" width="1.41">
>> 118.30 240.72 118.30 240.72
>> </stroke>
>> </layer>
>> </page>
>> </xournal>
>>
>> the issue seems to be that the stroke starts and ends in the same
>> location.
>>
>> On Thu, Oct 6, 2016 at 11:01 AM, dmg <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>> This is the stroke that is crashing xournal:
>>
>> <stroke tool="pen" color="red" width="1.41">
>> -nan -nan -nan -nan -nan -nan -nan -nan
>> </stroke>
>>
>>
>>
>> On Thu, Oct 6, 2016 at 10:42 AM, D M German <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>> Romano Gtti twisted the bytes to say:
>>
>> Romano> I used the ruler a bit in the document, and yes,
>> sometime I use it with the mouse (to underline text etc. and
>> make big
>> Romano> boxes, which are difficult to achieve with the mouse
>> and the shpe recognizer). So maybe this was the culprit.
>>
>> Romano> BTW, I removed that stroke from the file but I am still
>> unable to read it. Probably there is something more around. I
>> Romano> think that not saving such a 0-length segment is ok,
>> but a bit of defensive programming in reading it (like emit a
>> Romano> warning and ignoring it) could be nice to have...
>>
>> I presume that the best method to determine the culprit is to:
>>
>> - decompress the file: rename to file.xoj.gz and run gunzip on it
>> - do binary splicing of the file:
>> - remove half, does it load? If so, it the error is in the
>> other half.
>> - do recursively until error found
>>
>> --dmg
>>
>>
>>
>> Romano> Romano
>>
>> Romano> Thanks for the effort
>>
>>
>>
>> Romano> --
>> Romano> --
>> Romano> Romano at http://www.rgtti.com/
>>
>>
>> --
>> Daniel M. German "Un libro es un amigo a
>> voluntad...
>> puede convertirse en alacena
>> de recuerdos,en cántaro de
>> deseos,o
>> Germán Dehesa -> en ánfora de ensueños."
>> http://turingmachine.org/
>> http://silvernegative.com/
>> dmg (at) uvic (dot) ca
>> replace (at) with @ and (dot) with .
>>
>>
>>
>>
>>
>> --
>> --dmg
>>
>> ---
>> Daniel M. German
>> http://turingmachine.org
>>
>>
>>
>>
>> --
>> --dmg
>>
>> ---
>> Daniel M. German
>> http://turingmachine.org
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Xournal-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xournal-devel