Package: soci Architecture: amd64 Version: 4.0.1-4 Severity: grave Justification: Breaks linphone Affects: linphone Tags: patch upstream sid bullseye
The sqlite3 backend uses a hard-coded map of column data type names in src/backends/sqlite3/statement.cpp as hints to convert any results sqlite3 dynamically retyped to text to whatever the caller asked for. Linphone uses a database schema with MySQL-specific type names that are not in this map and thus suffers random std::bad_cast exceptions which are at the heart of #983365 (see badcast.cpp for a reproducer). The first attached patch adds the missing entries to the map which fixes the issue. The optional second patch disables the regeneration of an unneeded config file to satisfy dpkg-source during repeated builds. Regards, Dennis.
badcast.cpp.gz
Description: application/gzip
02-add-mysql-ddl-types.patch.gz
Description: application/gzip
03-disable-test-access-regen.patch.gz
Description: application/gzip