Unity8 stucks in icon loading code

Bug #1422835 reported by Sebastien Bacher
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ubuntu-ui-toolkit (Ubuntu)
Fix Released
Undecided
Albert Astals Cid
Vivid
New
Undecided
Unassigned
unity8 (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

With today updates (and qt 5.4) unity8-desktop freezes on start on my test machine, backtrace

"#0 0x00007f9b3c209fef in qt_memfill32(unsigned int*, unsigned int, int) (__B=..., __A=0x7f9aca955700) at /usr/lib/gcc/x86_64-linux-gnu/4.9/include/emmintrin.h:1465
#1 0x00007f9b3c209fef in qt_memfill32(unsigned int*, unsigned int, int) (dest=<optimized out>, value=0, count=<optimized out>) at painting/qdrawhelper_sse2.cpp:272
#2 0x00007f9b3bf08915 in QRasterPlatformPixmap::fill(QColor const&) (this=0x26251e0, color=...) at image/qpixmap_raster.cpp:211
#3 0x00007f9b3befcefc in QPixmap::fill(QColor const&) (this=this@entry=0x7fff63823e30, color=...) at image/qpixmap.cpp:952
#4 0x00007f9afee1dbae in IconTheme::findBestIcon(QStringList const&, int) (size=7519, filename=...) at unitythemeiconprovider.cpp:136
#5 0x00007f9afee1dbae in IconTheme::findBestIcon(QStringList const&, int) (size=7519, iconName=..., this=0x21113e0) at unitythemeiconprovider.cpp:193
#6 0x00007f9afee1dbae in IconTheme::findBestIcon(QStringList const&, int) (size=7519, iconName=..., this=0x21113e0) at unitythemeiconprovider.cpp:166
#7 0x00007f9afee1dbae in IconTheme::findBestIcon(QStringList const&, int) (this=0x21113e0, names=..., size=size@entry=7519) at unitythemeiconprovider.cpp:54
#8 0x00007f9afee19905 in UnityThemeIconProvider::requestPixmap(QString const&, QSize*, QSize const&) (this=0x2110b70, id=..., size=0x7fff63824040, requestedSize=...)
    at unitythemeiconprovider.cpp:253
#9 0x00007f9b3b67db9b in QQuickPixmap::load(QQmlEngine*, QUrl const&, QSize const&, QFlags<QQuickPixmap::Option>) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5"

the icon it seems to try to load is /usr/share/icons/suru/status/scalable/battery-100.svg

unity8 is eating cpu and the UI is not displaying (I see part of the lock screen, or the wizard if trying a new user, but can't interact with those)

Related branches

Revision history for this message
Albert Astals Cid (aacid) wrote :

The icon provider in the SDK is returning sizes for icons that are confusing against the request that make the size grow forever

requested icon "battery-080-charging" QSize(24, 24)
returned QSize(37, 24)
requested icon "battery-080-charging" QSize(37, 24)
returned QSize(57, 37)
requested icon "battery-080-charging" QSize(57, 24)
returned QSize(88, 57)
requested icon "battery-080-charging" QSize(57, 37)
returned QSize(88, 57)

I'll propose a patch that fixes this

Changed in unity8 (Ubuntu):
status: New → Invalid
Changed in ubuntu-ui-toolkit (Ubuntu):
assignee: nobody → Albert Astals Cid (aacid)
status: New → In Progress
Changed in ubuntu-ui-toolkit (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.7 KiB)

This bug was fixed in the package ubuntu-ui-toolkit - 1.2.1433+15.04.20150306-0ubuntu1

---------------
ubuntu-ui-toolkit (1.2.1433+15.04.20150306-0ubuntu1) vivid; urgency=medium

  [ Albert Astals Cid ]
  * Fix infinite icon size grow when asked for a non square icon
    Fixes: LP: #1422835
  * IconProvider: Make sure icons fit in the given size
  [ Christian Dywan ]
  * Skip select_text_longtap_when_active under opengles2.
    Fixes: LP: #1401140
  * Support for multiple devices with push_to_phone.sh.
  * Take OrientationHelper y coordinate from real parent height.
    Fixes: LP: #1413194
  * Update popover position upon pointer movement.
    Fixes: LP: #1199502, LP: #1415532
  * Change <code> to be inline-block. Fixes LP: #1427534
  * Set right anchor on tab overflow buttons. Fixes LP: #1425433
  * Add tst_listitems_itemselector.qml to EXCEPTIONS. So warnings are
    no longer fatal for unit test.
  [ Sebastien Bacher ]
  * document that MainView's applicationName is used to set the gettext
    domain. Fixes: LP: #1421661.
  [ Tiago Salem Herrmann ]
  * Drop cache once properties are successfully restored.
  [ Timo Jyrinki ]
  * Add dist-upgrade option to the UITK Test Plan script. Output the
    selected parameters in the beginning.
  [ Tim Peeters ]
  * Add MainView 1.2 which removes the deprecated toolbar support.
  * Enable PageStack header animations for MainView 1.2.
  * Fix the size and anchors of a Page that is loaded inside a Loader.
    This is useful when a Page is Loaded by a Tab. Fixes: LP: #1424635
  * Fix UITK gallery content page width.
    Fixes: LP: #1424635, LP: #1425470
  * Set objectName for MainView int est_textinput.header.qml and fix
    scenarios in test_textinput.py
  [ Zsombor Egri ]
  * Alarm services regression fix. Fixes: LP: #1401883
  * Implement ListItem dragging support in ListView.
    Fixes: LP: #119535
  * Introducing select/multiselect mode in ListItem.
  * Moving the tst_focus.qml under exceptions till we fix DatePicker
    binding loops.
  * RTL (Right To Left) support in ListItem.
  * RTM branch diff merge. Fixes: LP: #1358610.
  * Second stage of simplification - divider group property is an item,
    simplifying the anchoring of the contentItem. PropertyChange does
    not backup the property binding, uses QQmlPropertyPrivate::write()
    with parameter to keep bindings. ListItemAnimator uses behavior to
    animate snapping. Styling got "styledItem" context property to obey
    general styling rules. clicked() and pressAndHold() emission fix
    when content is swiped.
  * Transferring the ListItem attached properties to ListItemStyle API.
    Most of the style API became redundant, and removed. Few API from
    ListItem were also removed as not needed. ListItemAnimator,
    UCListItemAttached and UCActionPanel classes removed.
    Panel swiping overshoot made elastic. Snapping animation transformed
    into SmoothedAnimation, uses velocity of 60GU/second. Turning
    warnings to be reported in the error property.
    SHOW_SERVICEPROPERTIES_WARNINGS environment variable set will
    display them in the console. Fixes: LP: #1423203.
  * Updating documentation and imports for 1.2 & Vivid (Qt 5.4).
...

Read more...

Changed in ubuntu-ui-toolkit (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.