Akonadi::PayloadException: de-inline destructor, export class
This code had two bugs: 1. PayloadException wasn't exported (this didn't affect users because it seems to have been thrown only from template code so far). 2. The first virtual function (~PayloadException) was (implicitly) defined inline. So the compiler emitted one std::type_info inside libakonadi-kde.so, and _another one_ in, e.g., itemhydratest. As soon as a PayloadException is thrown from code compiled into the library, the type_info's mismatch and the PayloadException flies right past catch clauses designed to halt it. See also http://marcmutz.wordpress.com/2010/08/04/fun-with-exceptions/ svn path=/trunk/KDE/kdepimlibs/; revision=1159134
parent
fceaebb0
Please register or sign in to comment