Bug #185
closedSegfault beim Speichern von EPG-Daten in der Datenbank
Description
Bei einigen Beschreibungen von Sendungen über das EPG sind Anführungszeichen ' und " enthalten, die beim Einfügen in die Datenbank falsch interpretiert werden und dadurch nicht gespeichert werden.
Updated by methodus about 15 years ago
- Status changed from New to Resolved
- % Done changed from 0 to 50
Der Fehler liegt offensichtlich an der Interpretation von Strings in SQLite3. Diese werden mit zwei einfachen Anführungszeichen eingeleitet. Ein solches Zeichen in der Zeichenkette kann über doppelte einfache Anführungszeichen '' ersetzt werden. \' und \" wird nicht unterstützt.
Updated by methodus about 15 years ago
- Target version set to 0.0.2-alpha
- % Done changed from 50 to 60
Es gibt noch Fehler in Revision bde12e9e, der es unmöglich macht, die Datenbank zu aktuallisieren.
Updated by methodus about 15 years ago
Die Statement-Struktur muss grundlegend umgeschrieben werden, da im Moment alle Strings, die eventuell ein ' im Text haben, auskommentiert werden müssen. Falls dies nicht geschicht, kommt es zu Segmentation faults, wegen unbehandelten Daten beziehungsweise Null-Pointern.
Updated by methodus about 15 years ago
- Status changed from Resolved to Closed
- % Done changed from 60 to 100
Durch die sqlite3_vmprintf()-Funktion können ähnlich mit sprintf() Datenbankoperationen mit Strings kodiert werden, so dass aus ' \'' wird und außerdem die Strings in zwei Hochkommata eingeschlossen werden. Der bevorzugt Platzhalter für Strings in Datenbankoperationen ist daher nun %Q anstelle von %s