-
Notifications
You must be signed in to change notification settings - Fork 48
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
Fix signed to unsigned conversion in QuickJS stack overflow check #19
Conversation
Hey. I also wanted to apply some patches, eg for
I guess I would be ok with it with a different approach:
|
@theduke I've added "patched" feature as you suggested. |
Looks awesome! But I'm not sure if that's worth it - you need |
Looking at the docs, I think But yeah I think we can just use the patch executable for now and reconsider if someone complains. |
But we have a directory with multiple files. So in order to use it the patches should be per-file, if I understand it correctly. |
Good to merge after a rebase. |
I want to also add feature matrix to CircleCI build, as I've missed it at first. |
I've added it, but not sure that it would work, as CircleCI builds seem to work only on master. |
This commit adds a new "patched" feature to both the bindings and the main crate. This feature applies patches to the embedded version that fix up/extend quickjs. All patches are in libquickjs-sys/embed/patches.
I fixed up the circleci config and squashed your commits down to 2. big thanks! |
@a-rodin the patching fails on windows due to argument escaping: https://dev.azure.com/the-duke/quickjs-rs/_build/results?buildId=211&view=logs Related: rust-lang/rust#29494 |
@theduke I'm thinking about the following workaround: copy the patches to the build directory and then use relative paths instead of the absolute paths. |
Hi!
Sometimes QuickJS gives
stack overflow
exception when it shouldn't because of signed to unsigned conversion in the code that checks stack usage. I've sent the patch to QuickJS mailing list, but it would be nice to have this merged (and maybe even published) before the next QuickJS release.