René's URL Explorer Experiment


Title: 2574 StackOverflow Exception On Super Method Call Fix by rmadsen-ks · Pull Request #2628 · pythonnet/pythonnet · GitHub

Open Graph Title: 2574 StackOverflow Exception On Super Method Call Fix by rmadsen-ks · Pull Request #2628 · pythonnet/pythonnet

X Title: 2574 StackOverflow Exception On Super Method Call Fix by rmadsen-ks · Pull Request #2628 · pythonnet/pythonnet

Description: Update: Does not actually fix #2574, but a similar problem(#2629). I'll provide a fix for 2574 as well. Update 2: Now this also fixes #2574 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 call super().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? This closes #2574, #2627, #2629 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 to AUTHORS Updated the CHANGELOG

Open Graph Description: Update: Does not actually fix #2574, but a similar problem(#2629). I'll provide a fix for 2574 as well. Update 2: Now this also fixes #2574 This fixed an issue with a StackOverflow exception be...

X Description: Update: Does not actually fix #2574, but a similar problem(#2629). I'll provide a fix for 2574 as well. Update 2: Now this also fixes #2574 This fixed an issue with a StackOverflow exceptio...

Opengraph URL: https://github.com/pythonnet/pythonnet/pull/2628

X: @github

direct link

Domain: patch-diff.githubusercontent.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:10463573-43b0-dbd6-4a02-d40e74355165
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idC326:3DD772:73DBDB:99570F:6973F87C
html-safe-nonce7117f399860ec12bf69a3a3a3142980aacbdf3042f73f543ab6d4db6f58e3455
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDMzI2OjNERDc3Mjo3M0RCREI6OTk1NzBGOjY5NzNGODdDIiwidmlzaXRvcl9pZCI6IjY5Njk3OTYxMDg2NzU5NTM4OCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac1c7daffa9835d42b1b6bccf661d79a56afcb96b0b5a380b1277a5ac9c0f6613a
hovercard-subject-tagpull_request:2899831472
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/pythonnet/pythonnet/pull/2628/files
twitter:imagehttps://avatars.githubusercontent.com/u/24250062?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/24250062?s=400&v=4
og:image:altUpdate: Does not actually fix #2574, but a similar problem(#2629). I'll provide a fix for 2574 as well. Update 2: Now this also fixes #2574 This fixed an issue with a StackOverflow exception be...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Noneedd166dbd7a8c69304dd0f786a2ceae171d7a532d7f82516d7b971b6a831123e
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/pythonnet/pythonnet git https://github.com/pythonnet/pythonnet.git
octolytics-dimension-user_id6050430
octolytics-dimension-user_loginpythonnet
octolytics-dimension-repository_id14748123
octolytics-dimension-repository_nwopythonnet/pythonnet
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id14748123
octolytics-dimension-repository_network_root_nwopythonnet/pythonnet
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release7f2d62d773fd1f2c679e2ea93329a72fda65310a
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpythonnet%2Fpythonnet%2Fpull%2F2628%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpythonnet%2Fpythonnet%2Fpull%2F2628%2Ffiles
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=pythonnet%2Fpythonnet
Reloadhttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
Reloadhttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
Reloadhttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
pythonnet https://patch-diff.githubusercontent.com/pythonnet
pythonnethttps://patch-diff.githubusercontent.com/pythonnet/pythonnet
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Fpythonnet%2Fpythonnet
Fork 769 https://patch-diff.githubusercontent.com/login?return_to=%2Fpythonnet%2Fpythonnet
Star 5.4k https://patch-diff.githubusercontent.com/login?return_to=%2Fpythonnet%2Fpythonnet
Code https://patch-diff.githubusercontent.com/pythonnet/pythonnet
Issues 155 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/issues
Pull requests 18 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pulls
Discussions https://patch-diff.githubusercontent.com/pythonnet/pythonnet/discussions
Actions https://patch-diff.githubusercontent.com/pythonnet/pythonnet/actions
Projects 0 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/projects
Wiki https://patch-diff.githubusercontent.com/pythonnet/pythonnet/wiki
Security 0 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/security
Insights https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pulse
Code https://patch-diff.githubusercontent.com/pythonnet/pythonnet
Issues https://patch-diff.githubusercontent.com/pythonnet/pythonnet/issues
Pull requests https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pulls
Discussions https://patch-diff.githubusercontent.com/pythonnet/pythonnet/discussions
Actions https://patch-diff.githubusercontent.com/pythonnet/pythonnet/actions
Projects https://patch-diff.githubusercontent.com/pythonnet/pythonnet/projects
Wiki https://patch-diff.githubusercontent.com/pythonnet/pythonnet/wiki
Security https://patch-diff.githubusercontent.com/pythonnet/pythonnet/security
Insights https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pulse
Sign up for GitHub https://patch-diff.githubusercontent.com/signup?return_to=%2Fpythonnet%2Fpythonnet%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://patch-diff.githubusercontent.com/login?return_to=%2Fpythonnet%2Fpythonnet%2Fissues%2Fnew%2Fchoose
rmadsen-kshttps://patch-diff.githubusercontent.com/rmadsen-ks
pythonnet:masterhttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/tree/master
rmadsen-ks:2574-StackOverFlowExceptionOnSuperMethodCallFixhttps://patch-diff.githubusercontent.com/rmadsen-ks/pythonnet/tree/2574-StackOverFlowExceptionOnSuperMethodCallFix
Conversation 2 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628
Commits 3 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/commits
Checks 18 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/checks
Files changed https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
Please reload this pagehttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
2574 StackOverflow Exception On Super Method Call Fix https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#top
Show all changes 3 commits https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
e762072 Fixed issue calling multiple levels of derived classes with some defi… rmadsen-ks Oct 8, 2025 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/commits/e76207287059e818df826eed267403f09c54ea72
0c99551 Added fix for calling virtual method on baseclass which is not defined. rmadsen-ks Oct 9, 2025 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/commits/0c995516ac3066d6143fd33956a49a527a04ada7
98a740e minor cleanup rmadsen-ks Oct 14, 2025 https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/commits/98a740ec264b708584a8ff7cb9821e9a0934045c
Clear filters https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
Please reload this pagehttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
Please reload this pagehttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
ClassDerived.cs https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
classtest.cs https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-dbaa0ed1ff4fc6c0ee02fd8380f580f4ca9dec008f2c4e0abea57ee796e2cb2a
test_subclass.py https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-9ceab272e311025773bd11942d035ca436bc3de11cca28ef924e34104e8115ca
src/runtime/Types/ClassDerived.cshttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
View file https://patch-diff.githubusercontent.com/pythonnet/pythonnet/blob/98a740ec264b708584a8ff7cb9821e9a0934045c/src/runtime/Types/ClassDerived.cs
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/{{ revealButtonHref }}
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-3ba8dfb545848c99f724a80c82acfd41c8fdd8667991123149c3577c8ed30554
src/testing/classtest.cshttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-dbaa0ed1ff4fc6c0ee02fd8380f580f4ca9dec008f2c4e0abea57ee796e2cb2a
View file https://patch-diff.githubusercontent.com/pythonnet/pythonnet/blob/98a740ec264b708584a8ff7cb9821e9a0934045c/src/testing/classtest.cs
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/{{ revealButtonHref }}
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-dbaa0ed1ff4fc6c0ee02fd8380f580f4ca9dec008f2c4e0abea57ee796e2cb2a
tests/test_subclass.pyhttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-9ceab272e311025773bd11942d035ca436bc3de11cca28ef924e34104e8115ca
View file https://patch-diff.githubusercontent.com/pythonnet/pythonnet/blob/98a740ec264b708584a8ff7cb9821e9a0934045c/tests/test_subclass.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/{{ revealButtonHref }}
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-9ceab272e311025773bd11942d035ca436bc3de11cca28ef924e34104e8115ca
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-9ceab272e311025773bd11942d035ca436bc3de11cca28ef924e34104e8115ca
https://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files#diff-9ceab272e311025773bd11942d035ca436bc3de11cca28ef924e34104e8115ca
Please reload this pagehttps://patch-diff.githubusercontent.com/pythonnet/pythonnet/pull/2628/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.