Closed Bug 1420324 Opened 2 years ago Closed 2 years ago

Bad things could happen when MediaBlockCacheBase::Read() is called without holding the MediaCache monitor

Categories

(Core :: Audio/Video: Playback, defect, P2)

defect

Tracking

()

RESOLVED DUPLICATE of bug 1428242

People

(Reporter: jwwang, Assigned: jwwang)

References

(Blocks 1 open bug)

Details

(Keywords: regression)

https://searchfox.org/mozilla-central/rev/a5d613086ab4d0578510aabe8653e58dc8d7e3e2/dom/media/MediaCache.cpp#784-790

1. The cache blocks might be evicted, moved, or tampered when blockCache->Read() is called without holding the cache monitor. This might explain the decode errors seen in bug 1404373 comment 14.

2. https://searchfox.org/mozilla-central/rev/a5d613086ab4d0578510aabe8653e58dc8d7e3e2/dom/media/MediaCache.cpp#2571
cacheBlock might become an invalid index after mMediaCache->ReadCacheFile() returns for the reason described above.
Assignee: nobody → jwwang
Blocks: 1369263
Priority: -- → P2
Regressed by bug 1354389.
Blocks: 1354389
Keywords: regression
Blocks: 1404373
Depends on: 1420819
Depends on: 1420828
No longer blocks: 1369263
This is bug is fixed by bug 1428242 P2 which remove unlock in MediaCache::ReadCacheFile().
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1428242
You need to log in before you can comment on or make changes to this bug.