`Fiddle::Pointer#to_value` is unsafe
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Ruby
- Sterne
- 195
- Forks
- 53
- Ø Merge
- 23 Std. 57 Min.
- Gemergte PRs (30 T.)
- 1
Beschreibung
Well, it's pretty self-explanatory. It returns (VALUE)(data->ptr), and ptr is obviously not marked, so can be GCed. This method is either should be removed completely (it'll still e possible to hack around with Fiddle.dlunwrap, but this at least feels hacky) or to be allowed only for pointers marked to be in fact VALUEs (mark return value type in Function constructor), and they of course should gc_mark their ptrs. Btw, there is no way to create a pointer from Ruby object, either.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit dem Lesen der Implementierung von Fiddle::Pointer#to_value und des Function-Konstruktors und untersuche anschließend, wie das Markieren von Pointern und Fiddle.dlunwrap mit Rubys Garbage Collector interagieren. Das Issue stellt Alternativen zur Entfernung und Typbeschränkung vor; für den Abschluss sind ein festgelegtes Sicherheitsdesign, eine Implementierung und eine Abdeckung des betroffenen Verhaltens erforderlich.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- ruby
- Bereich
- tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Ruhig
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 30/100