[vlc-commits] [Git][videolan/vlc][3.0.x] 2 commits: demux: adaptive: fix deletion order between logic & resources

Felix Paul Kühne (@fkuehne) gitlab at videolan.org
Sun Jun 29 12:10:26 UTC 2025



Felix Paul Kühne pushed to branch 3.0.x at VideoLAN / VLC


Commits:
33697d7c by François Cartegnie at 2025-06-29T11:45:01+00:00
demux: adaptive: fix deletion order between logic & resources

(cherry picked from commit cb509e30da3d54a54c0d5946528a6e350a577c19)

- - - - -
5a9459ce by François Cartegnie at 2025-06-29T11:45:01+00:00
demux: adaptive: correct logics default uxtors

(adapted from commit 7e3ce3d0d5f4dc091ff5a7a42edb93e2f2752473)

- - - - -


6 changed files:

- modules/demux/adaptive/PlaylistManager.cpp
- modules/demux/adaptive/logic/AbstractAdaptationLogic.cpp
- modules/demux/adaptive/logic/AbstractAdaptationLogic.h
- modules/demux/adaptive/logic/AlwaysBestAdaptationLogic.h
- modules/demux/adaptive/logic/AlwaysLowestAdaptationLogic.hpp
- modules/demux/adaptive/logic/RoundRobinLogic.hpp


Changes:

=====================================
modules/demux/adaptive/PlaylistManager.cpp
=====================================
@@ -90,8 +90,8 @@ PlaylistManager::~PlaylistManager   ()
     delete streamFactory;
     unsetPeriod();
     delete playlist;
-    delete logic;
     delete resources;
+    delete logic;
     delete bufferingLogic;
     vlc_cond_destroy(&waitcond);
     vlc_mutex_destroy(&lock);


=====================================
modules/demux/adaptive/logic/AbstractAdaptationLogic.cpp
=====================================
@@ -38,10 +38,6 @@ AbstractAdaptationLogic::AbstractAdaptationLogic    (vlc_object_t *obj)
     maxheight = std::numeric_limits<int>::max();
 }
 
-AbstractAdaptationLogic::~AbstractAdaptationLogic   ()
-{
-}
-
 void AbstractAdaptationLogic::updateDownloadRate    (const adaptive::ID &, size_t,
                                                      mtime_t, mtime_t)
 {


=====================================
modules/demux/adaptive/logic/AbstractAdaptationLogic.h
=====================================
@@ -44,8 +44,9 @@ namespace adaptive
                                         public SegmentTrackerListenerInterface
         {
             public:
+                AbstractAdaptationLogic             () = delete;
                 AbstractAdaptationLogic             (vlc_object_t *);
-                virtual ~AbstractAdaptationLogic    ();
+                virtual ~AbstractAdaptationLogic    () = default;
 
                 virtual BaseRepresentation* getNextRepresentation(BaseAdaptationSet *, BaseRepresentation *) = 0;
                 virtual void                updateDownloadRate     (const ID &, size_t,


=====================================
modules/demux/adaptive/logic/AlwaysBestAdaptationLogic.h
=====================================
@@ -35,6 +35,7 @@ namespace adaptive
         {
             public:
                 AlwaysBestAdaptationLogic           (vlc_object_t *);
+                virtual ~AlwaysBestAdaptationLogic() = default;
 
                 virtual BaseRepresentation *getNextRepresentation(BaseAdaptationSet *,
                                                                   BaseRepresentation *) override;


=====================================
modules/demux/adaptive/logic/AlwaysLowestAdaptationLogic.hpp
=====================================
@@ -30,6 +30,7 @@ namespace adaptive
         {
             public:
                 AlwaysLowestAdaptationLogic(vlc_object_t *);
+                virtual ~AlwaysLowestAdaptationLogic() = default;
 
                 virtual BaseRepresentation* getNextRepresentation(BaseAdaptationSet *,
                                                                   BaseRepresentation *) override;


=====================================
modules/demux/adaptive/logic/RoundRobinLogic.hpp
=====================================
@@ -14,6 +14,7 @@ namespace adaptive
         {
             public:
                 RoundRobinLogic(vlc_object_t *);
+                virtual ~RoundRobinLogic() = default;
 
                 virtual BaseRepresentation* getNextRepresentation(BaseAdaptationSet *,
                                                                   BaseRepresentation *) override;



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/0ef5c1296bda493a733c270e7b0f501ee3a4ca5f...5a9459ce2a522c515be1ae2d34c8c8ebd00d98ac

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/0ef5c1296bda493a733c270e7b0f501ee3a4ca5f...5a9459ce2a522c515be1ae2d34c8c8ebd00d98ac
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list