Usar wmctrl com zenity prompt faz com que a falha de segmentação budgie-wm [closed]

3

Estou tentando escrever um script bash que alterna entre espaços de trabalho com alguns prompts de diálogo ao longo do caminho. Estou executando o Ubuntu 17.04 com o remix de Budgie.

Ao usar wmctrl ou zenity separadamente, ambos funcionam bem. Coloque-os juntos, no entanto, e o gerenciador de janelas budgie falha com uma falha de segmentação.

Isso acontece usando wmctrl -s 0 e xdotool set_desktop 0 . Eles funcionam bem sozinhos, mas não em combinação com zenity .

Aqui está o meu código (induz a falha de segmentação)

#!/bin/bash

desktop=$(xdotool get_desktop) #Get current workspace id

if [ "${desktop}" -eq 0 ] #If workspace == 0
then
  wmctrl -s 3 #Switch to workspace 3
  firefox --new-window "http://www.reddit.com"
else
    zenity --question --title "Switch Workspace?" --text "Are you sure you wish to return to previous workspace?"
    if ! $? #If response Yes
    then
      wmctrl -s 0 #Switch back
    else
      notify-send "Operation Aborted" "User canceled workspace return."
    fi
fi

Exemplo de código de trabalho quando o comando wmctrl é usado sozinho

#!/bin/bash

desktop=$(xdotool get_desktop) #Get current workspace id

if [ "${desktop}" -eq 0 ] #If workspace == 0
then
  wmctrl -s 3 #Switch to workspace 3
  firefox --new-window "http://www.reddit.com"
else
  wmctrl -s 0 #Switch back
fi

Exemplo de código de trabalho quando o comando zenity é usado sozinho

#!/bin/bash

desktop=$(xdotool get_desktop) #Get current workspace id

if [ "${desktop}" -eq 0 ] #If workspace == 0
then
  wmctrl -s 3 #Switch to workspace 3
  firefox --new-window "http://www.reddit.com"
else
    zenity --question --title "Switch Workspace?" --text "Are you sure you wish to return to previous workspace?"
    if ! $? #If response Yes
    then
      notify-send "Switch Workspace" "Operation placeholder."
    else
      notify-send "Operation Aborted" "User canceled workspace return."
    fi
fi

Veja o que encontrei em journalctl

Dec 02 11:17:54 main budgie-wm.desktop[20079]: Window manager warning: Received a NET_CURRENT_DESKTOP message from a broken (outdated) client who sent a 0 timestamp
Dec 02 11:17:54 main kernel: budgie-wm[20079]: segfault at 18 ip 00007fa255e8dfc1 sp 00007fff13189710 error 4 in libmutter-0.so.0.0.0[7fa255df0000+131000]
Dec 02 11:17:55 main gnome-session-binary[19810]: WARNING: Application 'budgie-wm.desktop' killed by signal 11
Dec 02 11:17:55 main gnome-session[19810]: gnome-session-binary[19810]: WARNING: Application 'budgie-wm.desktop' killed by signal 11
Dec 02 11:17:55 main ckb.desktop[20137]: QXcbConnection: XCB error: 148 (Unknown), sequence: 423, resource id: 0, major code: 140 (Unknown), minor code: 20
Dec 02 11:17:56 main budgie-wm[21537]: invalid (NULL) pointer instance
Dec 02 11:17:56 main budgie-wm[21537]: g_signal_connect_object: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

O que está causando a falha de segmentação quando zenity é usado para acionar a opção de espaço de trabalho, mas ambos os componentes funcionam bem separadamente?

    
por Tom 02.12.2017 / 14:11

1 resposta

0

Arquivado como bug no Zenity, consulte: link

    
por Tom 02.12.2017 / 23:05