diff --git a/platform/core/src/classes/MetadataProvider.ts b/platform/core/src/classes/MetadataProvider.ts index 541d9ff30d2..16ec357faa0 100644 --- a/platform/core/src/classes/MetadataProvider.ts +++ b/platform/core/src/classes/MetadataProvider.ts @@ -551,7 +551,13 @@ const WADO_IMAGE_LOADER = { usingDefaultValues = true; } - if (ImageOrientationPatient) { + // Additional validation (1. Must exist, 2.Must be an array, 3.Must be 6 values, 4. Must not be an invalid array (all 0s)) + if ( + ImageOrientationPatient && + Array.isArray(ImageOrientationPatient) && + ImageOrientationPatient.length === 6 && + ImageOrientationPatient.some(val => parseFloat(val) !== 0) + ) { rowCosines = toNumber(ImageOrientationPatient.slice(0, 3)); columnCosines = toNumber(ImageOrientationPatient.slice(3, 6)); imageOrientationPatient = toNumber(ImageOrientationPatient);