Bug 279863

Summary: The 'Shell' profile does not always starts a shell
Product: [Applications] konsole Reporter: Jekyll Wu <adaptee>
Component: generalAssignee: Konsole Developer <konsole-devel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: 2.7.999   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:

Description Jekyll Wu 2011-08-11 06:50:28 UTC
Version:           2.7.999 (using KDE 4.7.0) 
OS:                Linux

konsole ships a 'Shell' profile, which is supposed to start the default shell as its name implies.However, what it starts actually depends upon current default profile.


Reproducible: Always

Steps to Reproduce:
1). make sure 'Shell' profile is set as 'show in menu'.
2). create a new profile called 'VIM' which runs vim, and set it as default profile.
3). close all existing konsole windows, then invoke konsole again. 
4). A session running vim is started, as 'VIM' is the default profile.
5). start a new session by choosing 'Shell' profile under File -> New Tab


Actual Results:  
The new session started by 'Shell' profile runs vim.


Expected Results:  
The new session started by 'Shell' profile runs default shell.
Comment 1 Jekyll Wu 2011-08-11 10:28:19 UTC
Git commit cb6a87a9b45a24e020e32200ff502790ef70c99a by Jekyll Wu.
Committed on 11/08/2011 at 09:39.
Pushed by jekyllwu into branch 'master'.

When loading profile, do not initially set default profile as parent.

The old code will cause problem if the loaded profile does not specify
its parent explicitly. That loaded profile will have current default
profile as its parent, which means its behavior changes if another
profile is set as the default profile . A good example is the 'Shell'
profile.

The new code initially sets fallback profile as parent, which guarantees
the behavior of 'Shell' profile is stable.

BUG: 279863

M  +1    -1    src/SessionManager.cpp

http://commits.kde.org/konsole/cb6a87a9b45a24e020e32200ff502790ef70c99a
Comment 2 Kurt Hindenburg 2011-08-25 13:02:39 UTC
Git commit 5f3fd09c27e925c28f78b12ffe173c1e844ebf64 by Kurt Hindenburg, on behalf of Jekyll Wu.
Committed on 11/08/2011 at 09:39.
Pushed by hindenburg into branch 'KDE/4.7'.

When loading profile, do not initially set default profile as parent.

The old code will cause problem if the loaded profile does not specify
its parent explicitly. That loaded profile will have current default
profile as its parent, which means its behavior changes if another
profile is set as the default profile . A good example is the 'Shell'
profile.

The new code initially sets fallback profile as parent, which guarantees
the behavior of 'Shell' profile is stable.

BUG: 279863
(cherry picked from commit cb6a87a9b45a24e020e32200ff502790ef70c99a)

M  +1    -1    src/SessionManager.cpp

http://commits.kde.org/konsole/5f3fd09c27e925c28f78b12ffe173c1e844ebf64