Skip to content

Commit 01705c5

Browse files
authored
Fixing an abba lock on dl (#364)
1 parent 3ae823f commit 01705c5

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

OpenCDMi/FrameworkRPC.cpp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1402,7 +1402,11 @@ POP_WARNING()
14021402
if (_engine.IsValid()) {
14031403
_engine.Release();
14041404
}
1405-
_systemLibraries.clear();
1405+
while (_systemLibraries.empty() == false) {
1406+
Core::Library library(_systemLibraries.back());
1407+
_systemLibraries.pop_back();
1408+
Core::ServiceAdministrator::Instance().ReleaseLibrary(std::move(library));
1409+
}
14061410

14071411
_shell->Release();
14081412
_shell = nullptr;
@@ -1569,8 +1573,8 @@ POP_WARNING()
15691573
std::map<const std::string, SystemFactory> _systemToFactory;
15701574
Blacklist _systemBlacklistedCodecRegexps;
15711575
Blacklist _systemBlacklistedMediaTypeRegexps;
1572-
std::list<Core::Library> _systemLibraries;
1573-
std::list<string> _keySystems;
1576+
std::vector<Core::Library> _systemLibraries;
1577+
std::vector<string> _keySystems;
15741578
AsyncInitThread _thread;
15751579
Core::OptionalType<string> _group;
15761580
};

0 commit comments

Comments
 (0)