[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#976454: colord-kde: Wrong assignment of _ICC_PROFILE in multi-monitor setups where the primary monitor is not first in list.



Package: colord-kde
Version: 0.5.0-4
Severity: important
Tags: patch upstream
X-Debbugs-Cc: emw-debian-bugs@nocabal.de

Dear Maintainer,

colord-kde does not assign ICC profile X atoms correctly if the primary monitor
is not the first one in the monitor list.

My setup:

   DP-4   Monitor B (primary)
   HDMI-0 Monitor A

darktable-cmstest diagnosis:

    darktable-cmstest version 3.2.1
    this executable was built with colord support enabled
    darktable itself was built with colord support enabled

    primary CRTC is at CRTC 0
    CRTC for screen 0 CRTC 2 has no mode or no output, skipping
    CRTC for screen 0 CRTC 3 has no mode or no output, skipping

    DP-4        the X atom and colord returned different profiles
        X atom: _ICC_PROFILE (1212 bytes)
                description: Monitor A
        colord: "/path/to/icc/edid-monitor-B.icc"
                description: Monitor B (primary)

    HDMI-0      the X atom and colord returned different profiles
        X atom: _ICC_PROFILE_1 (0 bytes)
                description: (none)
        colord: "/path/to/icc/edid-A.icc"
                description: Monitor A

    Better check your system setup
     - some monitors reported different profiles
    You may experience inconsistent color rendition between color managed
applications

To my understanding, the error is an obviously missing C++-Reference "&" in the
assignment loop of atom IDs in colord-kde:

Original Code:

    for (auto monitor : monitorList) {
        monitor.atomId = atomId++;
    }

Fix Proposal (see pull request https://github.com/KDE/colord-kde/pull/1 ):

    for (auto & monitor : AmonitorList) {
        monitor.atomId = atomId++;
    }



With the fix, the darktable-cmstest diagnosis is fine:

    darktable-cmstest version 3.2.1
    this executable was built with colord support enabled
    darktable itself was built with colord support enabled

    primary CRTC is at CRTC 0
    CRTC for screen 0 CRTC 2 has no mode or no output, skipping
    CRTC for screen 0 CRTC 3 has no mode or no output, skipping

    DP-4        the X atom and colord returned the same profile
        X atom: _ICC_PROFILE (1204 bytes)
                description: Monitor B (primary)
        colord: "/path/to/icc/edid-monitor-B.icc"
                description: Monitor B (primary)

    HDMI-0      the X atom and colord returned the same profile
        X atom: _ICC_PROFILE_1 (1212 bytes)
                description: Monitor A
        colord: "/path/to/icc/edid-monitor-A.icc"
                description: Monitor A

    Your system seems to be correctly configured


It would be great if you could include this fix into the debian packet.

With best regards and many thx!
   Martin



-- System Information:
Debian Release: bullseye/sid
  APT prefers testing
  APT policy: (800, 'testing'), (700, 'unstable'), (600, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.9.0-4-amd64 (SMP w/6 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages colord-kde depends on:
ii  gnome-color-manager   3.36.0-1
ii  libc6                 2.31-4
ii  libkf5configwidgets5  5.74.0-2
ii  libkf5coreaddons5     5.74.0-2
ii  libkf5dbusaddons5     5.74.0-2
ii  libkf5i18n5           5.74.0-3
ii  libkf5service-bin     5.74.0-2
ii  libkf5service5        5.74.0-2
ii  libkf5widgetsaddons5  5.74.0-3
ii  liblcms2-2            2.9-4+b1
ii  libqt5core5a          5.15.1+dfsg-4
ii  libqt5dbus5           5.15.1+dfsg-4
ii  libqt5gui5            5.15.1+dfsg-4
ii  libqt5widgets5        5.15.1+dfsg-4
ii  libqt5x11extras5      5.15.1-2
ii  libstdc++6            10.2.0-19
ii  libx11-6              2:1.6.12-1
ii  libxrandr2            2:1.5.1-1

colord-kde recommends no packages.

colord-kde suggests no packages.

-- no debconf information


Reply to: