IpodCollection: finally safe solution for crash on early eject
author Matěj Laitl
()
committer Matěj Laitl
()
commit aa913a59a047205ed15a7f37f9f11d56785b6ff3
tree 72ee675beefd6a9e0482aaf31dd9cbfe83b7e000
parent 46baeee2d040de853557768ee40a1910cd4605c9
IpodCollection: finally safe solution for crash on early eject

We now (asynchronously) wait for the job that parses iPod tracks and
playlists before destroying IpodCollection.

Other change is that we factor playlists parsing into
IpodParseTracksJob, it really belongs there. (previously it was just
called from that thread and it made false impression that the method
is only called from the main thread)

BUG: 301166
FIXED-IN: 2.6
ChangeLog
src/core-impl/collections/ipodcollection/IpodCollection.cpp
src/core-impl/collections/ipodcollection/IpodCollection.h
src/core-impl/collections/ipodcollection/IpodPlaylist.cpp
src/core-impl/collections/ipodcollection/IpodPlaylistProvider.cpp
src/core-impl/collections/ipodcollection/IpodPlaylistProvider.h
src/core-impl/collections/ipodcollection/jobs/IpodParseTracksJob.cpp
src/core-impl/collections/ipodcollection/jobs/IpodParseTracksJob.h