1. 20 Jun, 2019 1 commit
    • Hugo Beauzée-Luyssen's avatar
      EventManager: Fix potential use-after-free · 62abf003
      Hugo Beauzée-Luyssen authored
      When move-assigning, or copy-assigning, any object that holds an event
      manager & inherits from Internal will have the internal class
      copy/move constructed first, causing its internal shared pointer to
      be overriden, and in turn the libvlc object to be released.
      This is a problem if this object contains an event manager with
      registered events, as the event manager will be overriden afterward,
      causing its destructor to unregister the events after the libvlc
      object it needs to unregister the events has been released.
      
      This commit ensures we hold on to the object associated with the event
      manager, and that we explicitely unregister all events before releasing
      the object.
      62abf003
  2. 04 Jun, 2019 1 commit
  3. 31 May, 2019 1 commit
  4. 28 May, 2019 2 commits
  5. 18 Oct, 2018 1 commit
  6. 02 Jul, 2018 1 commit
  7. 29 May, 2018 1 commit
  8. 10 May, 2018 1 commit
  9. 09 Apr, 2018 1 commit
  10. 08 Apr, 2018 1 commit
  11. 09 Mar, 2018 1 commit
  12. 27 Oct, 2017 2 commits
  13. 17 Jul, 2017 1 commit
  14. 15 Mar, 2017 1 commit
  15. 20 Sep, 2016 1 commit
  16. 08 Jun, 2016 1 commit
  17. 01 Jun, 2016 1 commit
  18. 24 Nov, 2015 1 commit
  19. 20 Nov, 2015 2 commits
    • Hugo Beauzée-Luyssen's avatar
    • Hugo Beauzée-Luyssen's avatar
      Allow callbacks to be shared between instances. · 13057ab6
      Hugo Beauzée-Luyssen authored
      This fixes an issue where having a callback set on a specific object
      would make an application crash. For instance, having 2 VLC::Instance
      objects and calling logSet on one would cause the wrapper
      libvlc_instance_t to invoke this callback. If the instance on which
      logSet was called gets destroyed, the object wrapping the callback will
      be destroyed as well, thus causing the next log callback invocation to
      crash.
      All callbacks are now shared among objects that wrap the same underlying
      libvlc_xxx_t object.
      In addition to that, we now ensure the wrapped vlc object gets destroyed
      before our callbacks wrappers.
      13057ab6
  20. 17 Sep, 2015 1 commit
  21. 15 Sep, 2015 1 commit
  22. 21 Aug, 2015 1 commit
  23. 21 Jul, 2015 1 commit
  24. 16 Jun, 2015 2 commits
  25. 20 May, 2015 3 commits
  26. 15 May, 2015 3 commits
  27. 12 May, 2015 1 commit
  28. 04 May, 2015 1 commit
  29. 24 Apr, 2015 1 commit
  30. 12 Apr, 2015 2 commits
  31. 26 Mar, 2015 1 commit