alnikiforov created this revision. alnikiforov added reviewers: apol, davidedmundson. Herald added a project: Plasma. Herald added a subscriber: plasma-devel. alnikiforov requested review of this revision.
REVISION SUMMARY When DPMS extension isn't available, powerdevil unexpectedly exits due to a call to unavailable DPMS function and Qt error handling for such errors. Following is a full log of powerdevil process when DPMS extension isn't present: $ /usr/libexec/kf5/org_kde_powerdevil QDBusArgument: read from a write-only object QDBusArgument: read from a write-only object QDBusArgument: read from a write-only object powerdevil: No outputs have backlight property powerdevil: Xrandr not supported, trying ddc, helper powerdevil: [DDCutilBrightness] 0 display(s) were detected powerdevil: org.kde5.powerdevil.backlighthelper.brightness failed powerdevil: DPMS extension not available The X11 connection broke: Unsupported extension used (code 2) XIO: fatal IO error 2 (No such file or directory) on X server ":0" after 408 requests (408 known processed) with 0 events remaining. This was detected while running KDE in a VM (without x2go). For some reason 'xdpyinfo -queryExtensions' didn't report DPMS extension being present. Only change in 'PowerDevilDPMSAction::onProfileUnload' was required to fix issue for me, but changes in other functions could be needed as well, thus I implemented it. Two calls to m_helper, 'm_helper->startFade()' and 'm_helper->stopFade()', had corresponding conditions left intact since it looks like it doesn't call DPMS-related functions. REPOSITORY R122 Powerdevil REVISION DETAIL https://phabricator.kde.org/D27278 AFFECTED FILES daemon/actions/dpms/powerdevildpmsaction.cpp To: alnikiforov, apol, davidedmundson Cc: plasma-devel, Orage, LeGast00n, The-Feren-OS-Dev, cblack, jraleigh, zachus, fbampaloukas, GB_2, ragreen, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart