mirror of
https://github.com/mackron/miniaudio.git
synced 2026-04-22 00:06:59 +02:00
webaudio: Count references to window.miniaudio
This commit is contained in:
+10
-3
@@ -38758,10 +38758,13 @@ static ma_result ma_context_uninit__webaudio(ma_context* pContext)
|
||||
|
||||
(void)pContext; /* Unused. */
|
||||
|
||||
/* Remove the global miniaudio object from window. */
|
||||
/* Remove the global miniaudio object from window if there are no more references to it. */
|
||||
EM_ASM({
|
||||
if (typeof(window.miniaudio) !== 'undefined') {
|
||||
delete window.miniaudio;
|
||||
window.miniaudio.referenceCount--;
|
||||
if (window.miniaudio.referenceCount === 0) {
|
||||
delete window.miniaudio;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -38783,7 +38786,9 @@ static ma_result ma_context_init__webaudio(ma_context* pContext, const ma_contex
|
||||
}
|
||||
|
||||
if (typeof(window.miniaudio) === 'undefined') {
|
||||
window.miniaudio = {};
|
||||
window.miniaudio = {
|
||||
referenceCount: 0
|
||||
};
|
||||
miniaudio.devices = []; /* Device cache for mapping devices to indexes for JavaScript/C interop. */
|
||||
|
||||
miniaudio.track_device = function(device) {
|
||||
@@ -38847,6 +38852,8 @@ static ma_result ma_context_init__webaudio(ma_context* pContext, const ma_contex
|
||||
});
|
||||
}
|
||||
|
||||
window.miniaudio.referenceCount++;
|
||||
|
||||
return 1;
|
||||
}, 0); /* Must pass in a dummy argument for C99 compatibility. */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user