Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arch Linux segfault in config #225

Closed
kaadmy opened this issue May 28, 2017 · 16 comments
Closed

Arch Linux segfault in config #225

kaadmy opened this issue May 28, 2017 · 16 comments

Comments

@kaadmy
Copy link

kaadmy commented May 28, 2017

I'm using the latest version of Arch Linux (as of 2017-05-28, 10:22 PDT), and i3status segfaults every time I run it.
I've narrowed it down to comments that don't have any text on them in specific situations, examples:

Works:

# A
#

# Dummy

# Dummy
# Comment here
#

#Dummy
# Comment here
#

#
general {
}

Doesn't work:

#

#
#

#
# A

#
# Comment here
#

Original issue:

I'm using the latest version of Arch Linux (as of 2017-05-28, 10:22 PDT), and i3status segfaults every time I run it.

I've narrowed it down to the ```general``` block in my config (it's in `~/.config/i3status/config`)
If the block is there at all (even empty), it segfaults.

**Edit:** removing the `general` block no longer fixes it, will do more testing
@Airblader
Copy link
Member

Is this the same as #224?

@kaadmy
Copy link
Author

kaadmy commented May 28, 2017

I don't think so, I ran the linked config in that issue and it works fine (minus it complaining about the colors not being in a string)

@jbernhard
Copy link

This is related to a recent update to libconfuse 3.1. On Arch, the problem can be worked around by downgrading i3status 2.11-2 -> 2.11-1 and confuse 3.1-1 -> 3.0-1. I'm not yet sure what the specific issue is.

@kaadmy
Copy link
Author

kaadmy commented May 28, 2017

I just patched my config since other that this issue it still works fully.

@oberon-manjaro
Copy link

Manjaro uses a custom build of i3status and it simply needed a rebuilt against confuse 3.1. Since then it is working normally again.

@Airblader
Copy link
Member

Thanks!

@oberon-manjaro
Copy link

oberon-manjaro commented May 31, 2017

Well, I'm afraid we have two different issues here. Even after the rebuild certain config causes confuse related segfault. I didn't realize it first because my config is still working.
On the Manjaro forum someone just posted the attached offending config
i3status.txt

(gdb) run
Starting program: /usr/bin/i3status 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00007f6c787485da in ?? () from /usr/lib/libconfuse.so.1
(gdb) bt
#0  0x00007f6c787485da in ?? () from /usr/lib/libconfuse.so.1
#1  0x00007f6c787493fb in cfg_yylex () from /usr/lib/libconfuse.so.1
#2  0x00007f6c78746ac8 in ?? () from /usr/lib/libconfuse.so.1
#3  0x00007f6c78747359 in cfg_parse_fp () from /usr/lib/libconfuse.so.1
#4  0x00007f6c78747428 in cfg_parse () from /usr/lib/libconfuse.so.1
#5  0x00000000004057d9 in main ()
(gdb)

@oberon-manjaro
Copy link

oberon-manjaro commented May 31, 2017

Ok. This is funny. In the just attached config simply removing the commented bit at the beginning fixes it! 😜

@oberon-manjaro
Copy link

In fact, just removing the first line full of hashes is enough.

@HiTuX
Copy link

HiTuX commented May 31, 2017

you are right @Oberon2007.
only one # could cause the segfault peoblem.
I think, the first line should be:

  • empty
  • # followed by anything other then a #
  • or just the first general statement

@oberon-manjaro
Copy link

oberon-manjaro commented May 31, 2017

#a
general {
...

^ works

#
general {
...

^ fails

##
general {
...

^ fails

#####a
general {
...

^ works
😆

@oberon-manjaro
Copy link

Looks very much like a bug in latest liibconfuse. I've opened an issue there.

@HiTuX
Copy link

HiTuX commented May 31, 2017

for me:

general {
...

Works

@troglobit
Copy link

Yep, was a regression in libConfuse introduced in v3.1. Fixed in libconfuse/libconfuse@7d70dd2 -- a new release will be out at the latest this weekend.

@oberon-manjaro
Copy link

Awesome! Thank you!

@troglobit
Copy link

libConfuse v2.3 released now ... https://github.com/martinh/libconfuse/releases/tag/v3.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants