Fix keyword arguments not be obtained with mrb_get_args()
; Fix #4754
#4855
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
If ":" is after "|" and there is no "?" or "*", the keyword argument could not be obtained and it was not initialized with
undef
.For example: "|oo:"
Even before the patch (mruby-2.1.0), ":|o" and "|o*:" etc work without problems.
However, "|oo:" described as an example is not assigned to keyword arguments at all.
Therefore, if the variable is accessed as it is, SIGSEGV will be executed in some cases.
Sorry!