Summary: | Unexpected konsole crash | ||
---|---|---|---|
Product: | [Applications] konsole | Reporter: | Nick Leverton <nick> |
Component: | general | Assignee: | Konsole Developer <konsole-devel> |
Status: | RESOLVED UNMAINTAINED | ||
Severity: | crash | CC: | cfeck |
Priority: | NOR | ||
Version: | 2.9.3 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Nick Leverton
2012-11-12 11:23:33 UTC
Thanks for reporting the crash. The backtrace really look strange. Here is the complete code of isSpace() 161 inline bool isSpace() const { 162 if (rendition & RE_EXTENDED_CHAR) { 163 return false; 164 } else { 165 return QChar(character).isSpace(); 166 } 167 } [Note, rendition is just a quint8 and RE_EXTENDED_CHAR is a constant int of value 32] So a simple bitwise operation causes a crash ... That is beyond my knowledge. who should I blame on :) "Character" is a class, and "rendition" is a member of that class. If the Character object is invalid, accessing rendition will cause a seg fault. Check the caller, not the inline function :) Git commit a88f9cb417a2c56e224273bee12663a013c28485 by Kurt Hindenburg. Committed on 17/03/2013 at 00:06. Pushed by hindenburg into branch 'master'. Check boundary of image to get valid Character This crash in isSpace() is due to invalid Character; check for valid array size before grabbing it. No one can reproduce the crash but this can't hurt hopefully. M +4 -0 src/TerminalDisplay.cpp http://commits.kde.org/konsole/a88f9cb417a2c56e224273bee12663a013c28485 |