Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-71134

QtWebkit triggers libpng warning: iCCP: known incorrect sRGB profile

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P3: Somewhat important
    • None
    • 5.11.1
    • WebKit
    • Linux, probably others.
    • Linux/X11

    Description

      Upstream issue: https://bugs.webkit.org/show_bug.cgi?id=189230

      Since 2011, Webkit contains PNG files with an invalid iCCP (color profile) chunk.

      In 2013 libpng released version 1.6 with introduced stricter validation on PNG files. Since then, Webkit applications which load these PNG files using libpng (common on linux, at least) emit the following warning:

      "libpng warning: iCCP: known incorrect sRGB profile"

      QWebkit vendors these PNG files ("textAreaResizeCorner@2x.png" for example,

      there are others):

      https://github.com/qt/qtwebkit/tree/5.212/Source/WebCore/Resources

      https://github.com/WebKit/webkit/tree/master/Source/WebCore/Resources

      The upstream bug reports names the following (I haven't verified):

      ./WebInspectorUI.framework/Versions/A/Resources/Images/SliderThumbPressed@2x.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/SliderThumbPressed.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/SliderThumb@2x.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/SliderThumb.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/HoverMenuButton@2x.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/HoverMenuButton.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/GradientStopSelected@2x.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/GradientStopSelected.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/GradientStop@2x.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/GradientStop.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/DatabaseTable.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/ColorIcon@2x.png
      ./WebInspectorUI.framework/Versions/A/Resources/Images/ColorIcon.png
      ./WebCore.framework/Versions/A/Resources/textAreaResizeCorner@2x.png
      ./WebCore.framework/Versions/A/Resources/modern-media-controls/images/airplay-placard@2x.png
      ./WebCore.framework/Versions/A/Resources/modern-media-controls/images/airplay-placard@1x.png
      ./WebCore.framework/Versions/A/Resources/AttachmentPlaceholder@2x.png
      ./WebCore.framework/Versions/A/Resources/AttachmentPlaceholder.png

      as explained in https://stackoverflow.com/a/22747902, the fix is simple. Running Imagemagick's "mogrify" command (on a file silently strips the bad chunk in place. This should have no undesirable side-effects (replacing an invalid profile with none at all should be fine).

      As a check, grepping the png file for "iCCP" will show whether it includes a color profile, so you can verify whether it has been stripped.

      This warning has been littering log files for years, and it's easy to fix. The commonly used FOSS application calibre is a notable victim.

       

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              annulen Konstantin Tokarev
              jirauser50178 user-38307 (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes