-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
crash on swaymsg command #4239
Comments
Now with
|
This is helpful:
|
FYI: I let memtest86-efi run: all tests with 4 passes: 0% errors |
This is hopefully irrelevant, but It's pretty interesting that it is implemented how it is, since there are runtime implications (albeit minimal) to using that to have multiple implementations selected at runtime. I've been investigating, but I can't reproduce this yet. EDIT: This has nothing to do with it. The block before that code checks for EDIT2: EDIT3: I successfully reproduced and bisected. The bad commit is f0f5de9 EDIT4: Identified root cause in option string parsing code, and I'm working on a patch as we speak. EDIT5: patch is working, but I need to clean it up a bit prior to submitting. This should work for you in the meantime. mcoffin/sway/command-parsing#4239 |
This patch fixes faulty command parsing introduced by f0f5de9. When that commit allowed criteria reset on ';' delimeters in commands lists, it failed to account for its inner ','-parsing loop eating threw the entire rest of the string. This patch refactors argsep to use a list of multiple separators, and (optionally) return the separator that it matched against in this iteration via a pointer. This allows it to hint at the command parser which separator was used at the end of the last command, allowing it to trigger a potential secondary read of the criteria. Fixes swaywm#4239
This patch fixes faulty command parsing introduced by f0f5de9. When that commit allowed criteria reset on ';' delimeters in commands lists, it failed to account for its inner ','-parsing loop eating threw the entire rest of the string. This patch refactors argsep to use a list of multiple separators, and (optionally) return the separator that it matched against in this iteration via a pointer. This allows it to hint at the command parser which separator was used at the end of the last command, allowing it to trigger a potential secondary read of the criteria. Fixes swaywm#4239
This patch fixes faulty command parsing introduced by f0f5de9. When that commit allowed criteria reset on ';' delimeters in commands lists, it failed to account for its inner ','-parsing loop eating threw the entire rest of the string. This patch refactors argsep to use a list of multiple separators, and (optionally) return the separator that it matched against in this iteration via a pointer. This allows it to hint at the command parser which separator was used at the end of the last command, allowing it to trigger a potential secondary read of the criteria. Fixes swaywm#4239
This patch fixes faulty command parsing introduced by f0f5de9. When that commit allowed criteria reset on ';' delimeters in commands lists, it failed to account for its inner ','-parsing loop eating threw the entire rest of the string. This patch refactors argsep to use a list of multiple separators, and (optionally) return the separator that it matched against in this iteration via a pointer. This allows it to hint at the command parser which separator was used at the end of the last command, allowing it to trigger a potential secondary read of the criteria. Fixes swaywm#4239
This patch fixes faulty command parsing introduced by f0f5de9. When that commit allowed criteria reset on ';' delimeters in commands lists, it failed to account for its inner ','-parsing loop eating threw the entire rest of the string. This patch refactors argsep to use a list of multiple separators, and (optionally) return the separator that it matched against in this iteration via a pointer. This allows it to hint at the command parser which separator was used at the end of the last command, allowing it to trigger a potential secondary read of the criteria. Fixes swaywm#4239
This patch fixes faulty command parsing introduced by f0f5de9. When that commit allowed criteria reset on ';' delimeters in commands lists, it failed to account for its inner ','-parsing loop eating threw the entire rest of the string. This patch refactors argsep to use a list of multiple separators, and (optionally) return the separator that it matched against in this iteration via a pointer. This allows it to hint at the command parser which separator was used at the end of the last command, allowing it to trigger a potential secondary read of the criteria. Fixes #4239
Thanks a lot @emersion , @mcoffin , @RedSoxFan !!! |
This patch fixes faulty command parsing introduced by f0f5de9. When that commit allowed criteria reset on ';' delimeters in commands lists, it failed to account for its inner ','-parsing loop eating threw the entire rest of the string. This patch refactors argsep to use a list of multiple separators, and (optionally) return the separator that it matched against in this iteration via a pointer. This allows it to hint at the command parser which separator was used at the end of the last command, allowing it to trigger a potential secondary read of the criteria. Fixes swaywm#4239
Sway Version:
sway version 1.1-rc1-34-g5b1a8d62 (Jun 9 2019, branch 'master')
Debug Log: of
./build/sway/sway -d -c /etc/sway/config &>/tmp/sway.log
: http://sprunge.us/KcmhqRDefault Config File (untouched):
/etc/sway/config
http://sprunge.us/jsajhnCUSTOM Config File:
/etc/sway/config.d/99-custom.mine
: http://sprunge.us/YxWBggSteps to reproduce:
1.) start sway as user
me
with standard config + above 99-custom.mine config: with./build/sway/sway -d -c /etc/sway/config
2.) start sakura with app_id
my-shell
using custom shortcut$mod+shift+return
3.) switch to empty/fresh workspace with default shortcut
$mod+2
4.) try to get sakura shell over using custom shortcut
$mod+shift+s
Stack Trace, if sway crashes:
coredumpctl gdb sway
withbt full
: http://sprunge.us/HIv9ZVThe text was updated successfully, but these errors were encountered: