Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

NULL ptr deref in instance_dealloc

Offen
#421 0 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
38/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
cpp, python
Bereich
backend

Rechercherichtung

Beginne bei src/object/class.cpp:337 und untersuche die Zerstörungssequenz rund um instance_dealloc und dessen dynamic_cast. Reproduziere den gemeldeten Fall mit clang16, gcc13 und Python 3.11 und verifiziere anschließend, dass die Zerstörung nicht mehr zu einer Nullzeiger-Dereferenzierung oder einer anderweitigen Verwendung des zerstörten Objekts führt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Hi, we've recently triggered null pointer deref in that place, right on dynamic_cast. From the first glance code does not look correct, dynamic_cast occurs after explicitly calling destructor on object. In our combination of clang16, gcc13 and python3.11 (I don't know what exactly triggered this) this destructor compiles in such way that vtable pointer is set to 0 in the end, which does not work so well with dynamic_cast.

Using object after destroying it sound like UB anyway, can it be fixed somehow? Using dynamic_cast before calling object destructor?

Vorherrschende Sprache
C++
Sterne
537
Forks
223
Ø Merge
11 Std. 22 Min.
Gemergte PRs (30 T.)
2

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus boostorg/python

Alle Issues in boostorg/python

Ähnliche Issues

Weitere Issues zu C++

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.