https://bugs.kde.org/show_bug.cgi?id=380491
Fabian Vogt <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #4 from Fabian Vogt <[email protected]> --- I believe I figured out the issue, it's a simple protocol mismatch between sender and receiver. The receiver (kcheckpass) reads a string and if it is !nullptr, reads an int: msg = GRecvStr (); if (msg && (GRecvInt() & IsPassword) && !*msg) GRecvStr returns a nullptr if the received string has a length of 0 or malloc fails. The sender (kscreenlocker_greet) sends a string and if it is not empty, send an int: GSendStr(m_password.toUtf8().constData()); if (!m_password.isEmpty()) { // IsSecret GSendInt(1); } Obviously that does not match, as an empty string still has a length of 1, so kcheckpass will not receive the int it expects. I'll test that and make a patch that cleans it up a bit. Although I'm not quite sure what "IsSecret" (which should've been "IsPassword" instead, which even has a different value now!) was originally supposed to mean, I'll leave it as-is. -- You are receiving this mail because: You are watching all bug changes.
