Das hatte er vorher drin und hat es auf meinen Post hin durch nullptr ersetzt. NULL ist Windows-Definition-Kram, aber kein C++ Standard.
Die SDL ist kein C++ sondern C, also kann sein Code genauso C sein. Daher ist NULL kein absoluter Schwachsinn. Aber man sollte wohl, wie Steef schon sagt, einfach auf die implizite boolean Konvertierung vertrauen.
Oder ist nullptr valides C11? Ich war der Ansicht, dass C immer noch nichts anders für null pointer hat und nullptr ist ja afaik nur C++ Standard.
Es kann außerdem nicht null sein, wenn es im Konstruktor und nur dort gesetzt wird.
Ich schlage vor er benutzt mal einen Debugger und geht das Zeile für Zeile durch bis es kracht. Der Fehler kann ja sonstwo sein.
Da der Code gekürzt ist könnte das schon irgendwo passiert sein, wer weiß das schon. Ich verlass mich da nicht drauf.
Ich persönlich finde es ja bedenklich, dass er erst TTF_OpenFont macht und danach dann TTF_Init. Das stimmt doch sicher nicht.
Guter Punkt, darauf hab' ich gar nicht geachtet.