Skip to content

Arg::keepAlive can be ignored on exception #185

@uvlad7

Description

@uvlad7

checkKeepAlive is called after invokeNativeFunction/invokeNativeMethod. So, imagine a native function that caches its argument and then throws an exception for some reason. In that case NativeFunction<>::call will handle the exception, but NativeFunction<>::operator() will fail to store the argument into keepAlive_.
It's not an issue for me, actually, but I think it's worth highlighting in the documentation or fixing it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions