Skip to content

[Clr2Papyrus] Possibly wrong invoke method used for delegates #6

@zerratar

Description

@zerratar

Whenever a nested delegate is used, it is required to find the method reference by going to the previous ldsfldn (load method ref pointer)

If you have a non-nested delegate right after this one may take the nested ones invoke instead of its own.

Solution: Never use the same reference more than once. If no ldsfldn is found then the appointed method name should be used instead.

Note: Having more than one delegate nested in each other has not been tested:
Ex:

DelegateA a => {
DelegateB b => {
. DelegateC c => {};
. c();
. }
. b();
};
A();

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions