diff --git a/src/core/icc_colorspace.js b/src/core/icc_colorspace.js index b8ed91a6f..a94c85c75 100644 --- a/src/core/icc_colorspace.js +++ b/src/core/icc_colorspace.js @@ -48,9 +48,7 @@ class IccColorSpace extends ColorSpace { static #wasmUrl = null; - static #finalizer = new FinalizationRegistry(transformer => { - qcms_drop_transformer(transformer); - }); + static #finalizer = null; constructor(iccProfile, name, numComps) { if (!IccColorSpace.isUsable) { @@ -100,6 +98,9 @@ class IccColorSpace extends ColorSpace { if (!this.#transformer) { throw new Error("Failed to create ICC color space"); } + IccColorSpace.#finalizer ||= new FinalizationRegistry(transformer => { + qcms_drop_transformer(transformer); + }); IccColorSpace.#finalizer.register(this, this.#transformer); }