<table><tr><td style="">dfaure added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D14890">View Revision</a></tr></table><br /><div><div><p>Yeah that's the problem.</p>

<p>The way I see it, the QIODevice API assumes that one will call errorString() only after some method returns an error, e.g. after QAbstractSocket::error() is emitted, or after socket.waitForEncrypted() returns false.</p>

<p>QFile[Device] and QAbstractSocket add their own errorcode enums on top of that, but that's not part of the base QIODevice API, which is all we have in KCompressionDevice.</p>

<p>Ideally QIODevice::close() would return a bool, and I'm more and more thinking that this should be done for Qt 6.<br />
But pending that, I'm afraid that we'll have to downcast to KCompressionDevice to call a new error() accessor after close()...</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R39 KTextEditor</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D14890">https://phabricator.kde.org/D14890</a></div></div><br /><div><strong>To: </strong>cullmann, dhaumann, dfaure<br /><strong>Cc: </strong>dfaure, kwrite-devel, kde-frameworks-devel, michaelh, kevinapavew, ngraham, bruns, demsking, cullmann, sars, dhaumann<br /></div>