Skip to content

[BUG] Rofi modi scripts terminating with SIG SEGV (Address Boundary Error) #1928

@gajeet11000

Description

@gajeet11000

Rofi version (rofi -v)

Version: 1.7.5

Configuration

https://gist.github.com/gajeet11000/ed328a9c711616c9f7dc8e08ac3a4df9

Theme

https://gist.github.com/gajeet11000/ab953c38a707d9170c32a41eb15f4da3

Timing report

https://gist.github.com/gajeet11000/ec831acdc91b099e1e1f6ae91b1c3cfc

Launch command

rofi -show "Home" -config /home/gajeet/.config/rofi/themes/search-config.rasi -theme ~/.config/rofi/themes/search.rasi -sort -sorting-method fzf -i -normal-window

Step to reproduce

Here I'm using script based modi config file where there are two modi "Home" and "Storage" with their respective script paths, and here are the two scripts below:

Home script

#!/bin/bash
opener="xdg-open"

if [[ -z "$1" ]]; then
    fd . --hidden $HOME 2>/dev/null | sed "s;$HOME;~;g"
else
    selection=$(echo "$1" | sed 's;\~;$HOME; ;s/ /\\ /g; s/\&/\\&/g; s/(/\\(/g; s/)/\\)/g')
    eval $opener "$selection" > /dev/null 2>&1 &
fi

Storage script

#!/bin/bash
opener="xdg-open"

if [[ -z "$1" ]]; then
#Here mnt/Storage can be replaced with any valid path of your choice.
    fd . --hidden /mnt/Storage 2>/dev/null
else
    selection=$(echo "$1" | sed 's/ /\\ /g; s/\&/\\&/g; s/(/\\(/g; s/)/\\)/g')
    eval $opener "$selection" > /dev/null 2>&1 &
fi

Step 1: Save both the theme config and rofi config to their respective rasi files.

Step 2: Save both the Home and Storage scripts to their respective sh file and make them executable.

Step 3: Edit the rofi config file and change the paths according to the paths of the shell script on your machine.

Step 4: Edit the paths for the config file and the theme file in the run command. Then run the command.

Step 5: When the window shows up with the prompt type something in the prompt and keep toggling between the Home and Search Modi using Ctrl + Tab. It should it terminated due to SIGSEGV (Address boundary error) Segmentation fault. If it doesn't try changing the prompt input string and repeat the same.

Expected behavior

The expected behavior is that rofi must not terminate with a SIGSEGV error and smoothly toggle between the configured modi

Actual behavior

Rofi terminates with the following error:

fish: Job 1, 'G_MESSAGES_DEBUG=Timings rofi -…' terminated by signal SIGSEGV (Address boundary error)

Additional information

Before posting this issue, I had previously asked for help on the ArchLinux forum. Here is the link . It will be very helpful for you guys as I have found out where the error occurs using the gdb debugging tool, must check it out. Here is the output of the Debuginfod

Using wayland display server protocol

  • No, I don't use the wayland display server protocol

I've checked if the issue exists in the latest stable release

  • Yes, I have checked the problem exists in the latest stable version

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions