Branch: refs/heads/master
  Home:   https://github.com/licq-im/licq
  Commit: 108f09ee77263682fabfe8a3018fec344798264a
      
https://github.com/licq-im/licq/commit/108f09ee77263682fabfe8a3018fec344798264a
  Author: Anders Olofsson <fl...@licq.org>
  Date:   2012-09-21 (Fri, 21 Sep 2012)

  Changed paths:
    M msn/src/msn.cpp

  Log Message:
  -----------
  msn: Correct some more casts


  Commit: 438ab1dd52be3f7759f52c4526204a44b56078a3
      
https://github.com/licq-im/licq/commit/438ab1dd52be3f7759f52c4526204a44b56078a3
  Author: Anders Olofsson <fl...@licq.org>
  Date:   2012-09-23 (Sun, 23 Sep 2012)

  Changed paths:
    M licq/include/licq/protocolsignal.h
    M licq/src/CMakeLists.txt
    A licq/src/protocolsignal.cpp

  Log Message:
  -----------
  api: Don't define entire derived classes in header

With all functions defined in the header, the compiler will not make a
single typeinfo for the class. This caused dynamic_cast in plugins to
fail sometimes as the object was created with a pointer to the daemons
typeinfo data but dynamic_cast was called with a different typeinfo
built into the plugin.
The key seems to be to have at least one virtual member that is
overriden in every subclasses, e.g. the virtual destructors are enough.


Compare: https://github.com/licq-im/licq/compare/04bd4ffad55b...438ab1dd52be

Reply via email to