linphone-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Linphone-users] std::bad_cast exceptions in liblinphone/src/db/main-db.


From: Dennis Filder
Subject: [Linphone-users] std::bad_cast exceptions in liblinphone/src/db/main-db.cpp (4.4.21)
Date: Sat, 6 Mar 2021 10:24:41 +0100
User-agent: Mutt/1.10.1 (2018-07-13)

Hi,

while packaging Linphone Desktop 4.2.5 for Debian Bullseye we ran into
an issue which we want to bring to your attention.  When using an
sqlite3 database it can happen that the chat history is not restored
when the user opens a contact in the UI.  I tracked this down to
several calls to soci_row::get<int>(size_t) in
liblinphone/src/db/main-db.cpp throwing std::bad_cast exceptions.
SOCI's sqlite3 backend under certain circumstances fails to convert
the strings received from the sqlite3 routines to ints, doubles
etc. and passes them along as strings instead which then fails the
dynamic_cast attempt.

I looked at the current HEAD for liblinphone and SOCI and saw that the
issue persists there.  We addressed it from two sides in Debian: first
with explicit checks in main-db.cpp[1].  Secondly, we added the
information SOCI's sqlite3 backend needs to successfully perform the
conversion there[2].

I won't give more details here as they are available in the bug
reports linked below (the second contains a reproducer).

We're also interested in what you'd consider the right way to correct
this as we will have to convince our release team to approve a
last-minute fix.

Thanks in advance,
Dennis Filder.

1: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=983365
2: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=984534

N.B.: I tried to make a gitlab.linphone.org account to report this,
but so far haven't had success.  Is that not possible?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]