AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch Ich habe schlimme Dinge [im Quellcode] gesehen :D
Thema durchsuchen
Ansicht
Themen-Optionen

Ich habe schlimme Dinge [im Quellcode] gesehen :D

Ein Thema von Getox · begonnen am 29. Jul 2022 · letzter Beitrag vom 27. Aug 2022
 
Getox

Registriert seit: 28. Dez 2012
155 Beiträge
 
Delphi XE3 Professional
 
#1

Ich habe schlimme Dinge [im Quellcode] gesehen :D

  Alt 29. Jul 2022, 13:13
Ich wollte einfach mal zur Unterhaltung eine Gruselgeschichte aus meinem Arbeitsleben erzählen.

Ich habe eine Änderung in einem Programmbereich vorgenommen, den ich eigentlich nie angefasst habe. Als ich beim Testen der Änderung das Programm schloss, bekam ich die Meldung über mehrere Speicherleaks.

Jetzt zum gruseligen Teil, was ein Vorgänger gemacht hat

Er hat ein Kontextmenü im Code aufgebaut, wo er jedem Menüeintrag 3 Integerwerte mitgeben wollte. Natürlich sind diese 3 Werte Magic Numbers - also Nummern, die auf magische Weise irgendwas machen und wo man ohne größere Recherche nicht herausfinden kann, was das für Nummern sind und was sie tun sollen. Das liegt auch daran, dass die einzelnen Nummern beim späteren auseinandernehmen des Strings in Variablen gepackt werden, die je mit einem Buchstaben benannt sind. Diese 3 Nummern hat er dann kommasepariert in einen String gepackt. Dann hat er Pointer auf diese Strings in die Tags der Menüeinträge gepackt. Damit die Strings aber nach dem Verlassen der Gültigkeitsbereiche nicht freigegeben werden, hat er den Speicher manuell reserviert. Diesen Speicher hat er aber nie wieder freigegeben...

Wie kann man nur so viele schreckliche Dinge gleichzeitig in eine einzige Mechanik einbauen?
Ist ein Nilpferd ein Pferd, das nicht vorhanden ist?

Geändert von Daniel (29. Jul 2022 um 13:41 Uhr) Grund: Titel angepasst
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz