Bug 315086

Summary: konsole hangs on launch with attached config
Product: [Applications] konsole Reporter: Philip Muškovac <yofel>
Component: kpartAssignee: Konsole Developer <konsole-devel>
Status: RESOLVED FIXED    
Severity: normal CC: cfeck
Priority: NOR    
Version: 2.10   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In: 4.10.3
Sentry Crash Report:
Attachments: broken config files

Description Philip Muškovac 2013-02-13 19:35:46 UTC
Kubuntu Raring (development release)
konsole from kde 4.10.0

Using the attached configuration konsole hangs while starting with 100% CPU.
The only debug output I get is thousands of

konsole(18346) Konsole::ColorSchemeManager::loadColorScheme: color scheme with name "Weiß (Transparent)" has already been found, ignoring.

messages. I guess it chokes on the subfolder that was created because the colorscheme name has '/' in it?

Reproducible: Always

Steps to Reproduce:
1. put the attached configuration at it's place
2. run konsole
Actual Results:  
It hangs during start.

Expected Results:  
Konsole opens
Comment 1 Philip Muškovac 2013-02-13 19:36:23 UTC
Created attachment 77265 [details]
broken config files
Comment 2 Kurt Hindenburg 2013-02-13 20:32:46 UTC
Yes it is the subfolder - if you place the .colorscheme in the top folder it works OK - I've never seen someone put the colorschemes in a subfolder.  I'll look at it.
Comment 3 Philip Muškovac 2013-02-13 20:40:07 UTC
That happened because the colorsheme is called "Schwarz/Weiß (Transparent)" and konsole seems to understand Schwarz/ as subfolder instead of escaping that.
Comment 4 Kurt Hindenburg 2013-02-13 21:11:08 UTC
You seem to be saying that you're using '/' NOT as a subfolder but your .tar.gz says it is.  I don't think you can have a file named 'abc/def' where abc is not a folder

~ [ tar zxvf Downloads/konsole_configs.tar.gz                         ] 4:07 PM
x konsole.old/
x konsole.old/Schwarz/
x konsole.old/Schwarz/Weiß (Transparent).colorscheme
x konsole.old/Shell.profile
x konsolerc.old
Comment 5 Philip Muškovac 2013-02-13 21:37:06 UTC
I meant that "Schwarz/Weiß (Transparent)" is the name of the colorscheme in Konsole. When loading that it says that it loads "Weiß (Transparent)" instead of "Schwarz/Weiß (Transparent)". "Schwarz/" is meant to be just a part of the name, not a subfolder. That's all I meant, sorry if I rather added to the confusion.

(I never created that subfolder, konsole did)
Comment 6 Kurt Hindenburg 2013-02-14 01:26:55 UTC
OK I understand now - the fix will to not allow users to enter / (and possible other invalid chars) into the name entry.
Comment 7 Christoph Feck 2013-02-15 22:34:31 UTC
> the colorsheme is called "Schwarz/Weiß (Transparent)"

Is that a translation provided by KDE itself?
Comment 8 Philip Muškovac 2013-02-16 14:12:38 UTC
No, it's what was set as theme description when creating the theme from the settings.
Comment 9 Kurt Hindenburg 2013-04-06 19:29:19 UTC
Git commit b41a9253e6f4b82764f562bd354d7b980374d0ab by Kurt Hindenburg.
Committed on 06/04/2013 at 21:23.
Pushed by hindenburg into branch 'master'.

Prevent infinite loop when Scheme name has / in it

A fix to prevent an infinite loop if user puts / in ColorScheme name;
Konsole will create a sub-folder in that case.

More code will have to go in to prevent the users from doing that.

FIXED-IN: 4.11

M  +8    -0    src/ColorSchemeManager.cpp

http://commits.kde.org/konsole/b41a9253e6f4b82764f562bd354d7b980374d0ab
Comment 10 Kurt Hindenburg 2013-04-06 20:59:31 UTC
Git commit 8775d4d1be7204da4e92dd95751a9fd474330250 by Kurt Hindenburg.
Committed on 06/04/2013 at 22:57.
Pushed by hindenburg into branch 'KDE/4.10'.

Prevent infinite loop when Scheme name has / in it

A fix to prevent an infinite loop if user puts / in ColorScheme name;
Konsole will create a sub-folder in that case.

More code will have to go in to prevent the users from doing that.

FIXED-IN: 4.10.3

M  +8    -0    src/ColorSchemeManager.cpp

http://commits.kde.org/konsole/8775d4d1be7204da4e92dd95751a9fd474330250