-
Notifications
You must be signed in to change notification settings - Fork 31
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
Segfault when generating metadata on Arch #38
Comments
Last lines of verbose output before the segfault:
|
This crash makes no sense, since the I was seeing some strange crashes as well (broken string in libappstream which just can't be broken) yesterday, but I was attributing those to the latest Git master patch on scoped classes so far. Maybe something in asgen is messing with us... |
I've added some debug. Seems that the culprit is archlinux-menus |
Replacing line 252 in result.d with
fixes the problem |
So, something destroys the |
Can you maybe give me the full backtrace (bt full) on the position where it crashed? Duplicating the array is only masking the issue. |
Yes, cpts.values also fixes the crash. Full backtrace: (there's some line number offset due to debug lines I added)
|
This smells a bit like a D (DRuntime / LDC) bug, I can't make out any issue in the code. byValue should return a range on the cpts associative array which is still alive at that time (it must be, otherwise we couldn't even dup it), yet, we get a segfault when calling it. synchronized gres.finalize (); I unfortunately still can't reproduce this issue, but squashed another, different, bug in AppStream in the process of poking the code a little and running it on a Debian repo :P |
Oh damn... While writing a blogpost to the D language forums about this weird behavior, I found the issue: Recently, a new hint type was added, which I thought does not trigger the rejection of a package - turns out it does. I have no idea why I haven't seen this before, obvious issue is obvious (there is even a comment in the code warning about this...). |
Maybe have asgen reprocess the data after updating to the new release, I wouldn't necessarily trust it now (some bad data might have slipped through). |
appstream-generator 0.6.2, compiled against ldc 1.1
The text was updated successfully, but these errors were encountered: