Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

2574 StackOverflow Exception On Super Method Call Fix#2628

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Open
rmadsen-ks wants to merge1 commit intopythonnet:master
base:master
Choose a base branch
Loading
fromrmadsen-ks:2574-StackOverFlowExceptionOnSuperMethodCallFix

Conversation

rmadsen-ks
Copy link
Contributor

@rmadsen-ksrmadsen-ks commentedOct 9, 2025
edited
Loading

Update: Does not actuallyfix#2574, but a similar problem. I'll provide a fix for 2574 as well.

This fixed an issue with a StackOverflow exception being generated when a virtual method is being called, but a class in the middle of the inheritance tree does not override the method.

This happens because the CallVirtual method calls the method on the python object if the wrapper got generated, causing everything to be evaluated again from the top. Doing it this way, causes the the python method only to get invoked if there is an implementation on the class, which can then correctly callsuper().Method().

For the finalizer fix, we now skip generating the call to PyFinalize if the base class is already a python class, because if that is the case the finalize method has already been added.

Additionally it simplifies how the generated code for virtual methods look. Now, a virtual wrapper method is not automatically generated. Only if the method is actually being overwritten by the class it will prompt the generation of a virtual method wrapper.

Does this close any currently open issues?

Thiscloses#2574,#2627

Any other comments?

...

Checklist

Check all those that are applicable and complete.

  • Make sure to include one or more tests for your change
  • If an enhancement PR, please create docs and at best an example
  • Ensure you have signed the.NET Foundation CLA
  • Add yourself toAUTHORS
  • Updated theCHANGELOG

…ning a method and some not.Also fixed an issue causing the finalizer to be called twice.Added unit tests to verify the fix.
@rmadsen-ksrmadsen-ksforce-pushed the2574-StackOverFlowExceptionOnSuperMethodCallFix branch from3ddd76a tobf389cfCompareOctober 9, 2025 08:30
@filmor
Copy link
Member

Thanks a lot for this. I will try my best to get the CI working again on the weekend and will "enqueue" this one for merging.

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers
No reviews
Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

StackOverflowException on calling super().method()
2 participants
@rmadsen-ks@filmor

[8]ページ先頭

©2009-2025 Movatter.jp