On Friday, 20 April 2018 at 19:32:24 UTC, Matthias Klumpp wrote:
On Friday, 20 April 2018 at 18:30:30 UTC, Matthias Klumpp wrote:
[...]
Turns out that was indeed the case! I created a small testcase
which managed to very reliably reproduce the issue on all
machines that I tested it on. After reordering the
dispose/removeRange, the crashes went away completely.
I submitted a pull request to the containers library to fix
this issue:
https://github.com/dlang-community/containers/pull/107
Partly dumb luck on my part since I opened hashmap file first
just to see if there are some mistakes in GC.add/removeRange, and
it was a hit. I just assumed it was wrong everywhere else ;)
Glad it was that simple. Thanks for fixing it for good.
Thanks a lot for the help in debugging this, I learned a lot
about DRuntime internals in the process. Also, it is no
exaggeration to say that the appstream-generator project would
not be written in D (there was a Rust prototype once...) and I
would probably not be using D as much (or at all) without the
helpful community around it.
Thank you :-)