Bug 461029

Summary: [Regression with bisect]: "kwin_core: precision lost! floating value sent to X..."
Product: [Plasma] kwin Reporter: Dan <dan76>
Component: coreAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: normal CC: ahiemstra, asturm, nate, telans
Priority: NOR Keywords: regression
Version: 5.26.2   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=461032
Latest Commit: Version Fixed In:

Description Dan 2022-10-26 17:50:48 UTC
After updating from Kwin 5.26.1 to 5.26.2 I got the following on the log:

kwin_core: precision lost! floating value sent to X 2039.5
kwin_core: precision lost! floating value sent to X 1942.5
kwin_core: precision lost! floating value sent to X 1942.5
kwin_core: precision lost! floating value sent to X 1942.5
kwin_core: precision lost! floating value sent to X 2039.5

At the same time, there's corruption on the screen (the windows were not being repainted when maximized). So I did a bisect and here's the result:

da10d8481af24f7ff7092e5a2da5c5262fdd4011 is the first bad commit
commit da10d8481af24f7ff7092e5a2da5c5262fdd4011
Author: Arjen Hiemstra <ahiemstra@heimr.nl>
Date:   Mon Oct 24 16:03:52 2022 +0200

    Add a helper function to convert QPointF to QPoint using floor instead of round
    
    In a bunch of cases, we want to floor when converting to QPoint rather
    than rounding. As it gets tedious to repeat the same code over and over,
    add a helper function.
    
    (cherry picked from commit 2f900d84abd2b3d99c85a63eb7b743eb0761e9bf)

 src/libkwineffects/kwineffects.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

git bisect start
# status: waiting for both good and bad commits
# bad: [649a573e358f32193715237849ebf5d7e28e14e9] fix compile
git bisect bad 649a573e358f32193715237849ebf5d7e28e14e9
# status: waiting for good commit(s), bad commit known
# good: [1af6a1a708c5e37e7d6d21dcad74806fb72f20f3] Update version number for 5.26.1 GIT_SILENT
git bisect good 1af6a1a708c5e37e7d6d21dcad74806fb72f20f3
# good: [870aee8cdc82fdae7440589ea61dfdb0c79f84e9] inputpanelv1window: never hide overlay panels
git bisect good 870aee8cdc82fdae7440589ea61dfdb0c79f84e9
# bad: [d78187005432ed02159963fd76554678a9db2e67] Window: Floor rather than round when doing hitTest for the decoration
git bisect bad d78187005432ed02159963fd76554678a9db2e67
# good: [f28e547330ae4c3c6c4ac97cd6fb7930d8e2e148] Implement a enableRequested signal for text-input-v3
git bisect good f28e547330ae4c3c6c4ac97cd6fb7930d8e2e148
# bad: [da10d8481af24f7ff7092e5a2da5c5262fdd4011] Add a helper function to convert QPointF to QPoint using floor instead of round
git bisect bad da10d8481af24f7ff7092e5a2da5c5262fdd4011
# good: [3c07db610bf70796f612016c6c5354ca5c565ebd] wayland: Fix missing relative motion events
git bisect good 3c07db610bf70796f612016c6c5354ca5c565ebd
# first bad commit: [da10d8481af24f7ff7092e5a2da5c5262fdd4011] Add a helper function to convert QPointF to QPoint using floor instead of round

*********************************

Does it make sense? So I downgraded to 5.26.1 and everything is working fine.

Thanks!
Comment 1 Dan 2022-10-26 17:53:41 UTC
My setup if it's relevant:

KDE Plasma Version: 5.26.1
KDE Frameworks Version: 5.100.0
Qt Version: 5.15.5
Kernel Version: 6.0.3 (64-bit)
Graphics Platform: X11
Processors: 16 × Intel® Core™ i9-9980HK CPU @ 2.40GHz
Memory: 31.2 GiB of RAM
Graphics Processor: NVIDIA GeForce RTX 2070 with Max-Q Design/PCIe/SSE2
Comment 2 Dan 2022-10-26 22:13:06 UTC
Ok, with commit c65264e1, it solves the issue:

https://invent.kde.org/plasma/kwin/-/commit/c65264e15355397931df8ad7fa58619b26487c17#b95537a58887ab61b7f3b4e00f79b22e65d81374

So I'm marking this as a duplicate of 461032.

Thanks!

*** This bug has been marked as a duplicate of bug 461032 ***