ruby / ruby/fiddle

Unreachable code path in Fiddle::ValueUtil#wrap_arg

Offen
#124 5 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Ruby
Sterne
195
Forks
53
Ø Merge
23 Std. 57 Min.
Gemergte PRs (30 T.)
1

Beschreibung

In Fiddle::ValueUtil#wrap_arg there is a long case-when for arg with an unreachable code path.
When arg and ty are of Array type, and ty[0] is TYPE_CHAR, there is another condition, for arg to be String at Line 101.
Even if this condition is fixed, val is undefined at Line 102 for this method.
https://github.com/ruby/fiddle/blob/04238cefed14a433f93909bd93dbe1d0a4efc47e/lib/fiddle/value.rb#L95-L106

Should Lines 100-103 be removed?

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne in lib/fiddle/value.rb bei Fiddle::ValueUtil#wrap_arg, insbesondere bei den im Issue verlinkten Zeilen 95-106. Verfolge die Array- und TYPE_CHAR-Zweige, um die unerreichbare Bedingung und das undefinierte val zu bestätigen, und ermittle anschließend, ob die Zeilen 100-103 entfernt werden sollten; abgeschlossen ist die Aufgabe, wenn der tote Pfad behoben ist, ohne das Wrapping gültiger Argumente zu ändern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
ruby
Bereich
backend
Issue-Typ
Refactoring
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
52/100

Neue Issues direkt in Ihr Postfach

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