Bug ID 1087982
Summary XFCE Terminal does not update the tittle correctly because of error in /etc/bash.bashrc
Classification openSUSE
Product openSUSE Distribution
Version Leap 15.0
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component Basesystem
Assignee bnc-team-screening@forge.provo.novell.com
Reporter carlos.e.r@opensuse.org
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

This is a repeat of Bug 1076927, but for Leap 15.0, so that it can be solved
before release.

Photo of issue.
See attachment 756971 [details]

The XFCE Terminal application does not update the tittle correctly. For
instance, I "su -" but the tittle shows "terminal - user@hostname", where it
should show "terminal - root@hostname" (see attached photo).

This is affecting all releases since some update, from 42.2 and up to
Tumbleweed.


The problem is probably this. Compare "set | less"

Settings on the XFCE term

SHLVL=2
TERM=xterm-256color
UID=1000
USER=cer

...

ppwd () 
{ 
    true
}


but on (working) xterm:

SHLVL=2
TERM=xterm
TS1=$'\E7\E]2;%s@%s:%s\a\E]1;%s\a\E8'
UID=1000
USER=cer

...

ppwd () 
{ 
    local dir;
    local -i width;
    test -n "$TS1" || return;
    dir="$(dirs +0)";
    let width=${#dir}-18;
    test ${#dir} -le 18 || dir="...${dir#$(printf "%.*s" $width "$dir")}";
    if test ${#TS1} -gt 17; then
        printf "$TS1" "$USER" "$HOST" "$dir" "$HOST";
    else
        printf "$TS1" "$USER" "$HOST" "$dir";
    fi
}



It appears to be set or not in /etc/bash.bashrc

        # Set xterm prompt with short path (last 18 characters)
        # 
        if path tput hs 2>/dev/null || path tput -T $TERM+sl hs 2>/dev/null ;
then


...

            unset _isl _tsl _fsl _sc _rc
            ppwd () {
                local dir
                local -i width
                test -n "$TS1" || return;
                dir="$(dirs +0)"
                let width=${#dir}-18
                test ${#dir} -le 18 || dir="...${dir#$(printf "%.*s" $width
"$dir")}"
                if test ${#TS1} -gt 17 ; then
                    printf "$TS1" "$USER" "$HOST" "$dir" "$HOST"
                else
                    printf "$TS1" "$USER" "$HOST" "$dir"
                fi
            }
        else
            ppwd () { true; }
        fi


Minas-Anor:~ # rpm -qf /etc/bash.bashrc
aaa_base-84.87+git20180208.8eeab90-lp150.2.1.x86_64
Minas-Anor:~ # 


This was working correctly till some update.


You are receiving this mail because: