trunk: incorrect rendering of switch elements (rev >= 12532)

Bug #1249862 reported by su_v on 2013-11-10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Markus Engel

Bug Description

A file (attached) containing a <switch> element like this:

        <switch allowReorder="yes">
            <text systemLanguage="en">en</text>
            <text systemLanguage="de">de</text>
            <text systemLanguage="es">es</text>
            <text systemLanguage="fr">fr</text>
            <text systemLanguage="it">it</text>

renders as expected with Inkscape 0.48.4 and trunk rev <= 12531. With rev >= 12532, the <switch> element without 'systemLanguage' attribute (content: "other") is rendered on top of an element selected based on the correctly detected system language.

Tested on OS X 10.7.5 by launching inkscape from the command line:
$ LANG=en_EN.UTF-8 inkscape testcase.svg
$ LANG=de_DE.UTF-8 inkscape testccase.svg

The <switch> renders as expected in Firefox 25.0, Chromium 33.0.1705.0 (234154) and Squiggle (Batik 1.7).

The test case was taken from bug #1249423 (which AFAICT is about a different issue since the user doesn't see any content of any element of the <switch> object).

su_v (suv-lp) wrote :
su_v (suv-lp) wrote :

Screenshot of test case, rendered in r12786 with system language fr_FR
(the last element is differently colored to better visualized the overlaid objects).

Markus Engel (engelmarkus) wrote :

I was missing some "virtuals" there, causing the wrong method to be called. Try the attached patch.

Changed in inkscape:
assignee: nobody → Markus Engel (engelmarkus)
status: New → In Progress
su_v (suv-lp) wrote :

Patch tested successfully with r12790 on OS X 10.7.5.

Markus Engel (engelmarkus) wrote :

Fixed in r12794.

Changed in inkscape:
status: In Progress → Fix Released
su_v (suv-lp) on 2013-12-19
Changed in inkscape:
milestone: 0.91 → none
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers