Skip to content

BUG: Validate Bruker geometry array cardinalities - #6990

Open
jdotc1 wants to merge 3 commits into
InsightSoftwareConsortium:mainfrom
jdotc1:fix/jdotc1-bruker-array-cardinality-20261022
Open

jdotc1 wants to merge 3 commits into
InsightSoftwareConsortium:mainfrom
jdotc1:fix/jdotc1-bruker-array-cardinality-20261022

Conversation

@jdotc1

@jdotc1 jdotc1 commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Validate Bruker geometry arrays before indexing them. Addresses S1 of #6813; other items remain open.

Scope and risk

This covers S1 and a dimension prerequisite, not the whole public security issue. Signed frame counts, frame-group arithmetic and zero/nonfinite physical extents remain outside the patch. Native parser/geometry regressions are mandatory.

Validation

130 isolated accessor cases compile and pass with GCC, AddressSanitizer and UndefinedBehaviorSanitizer. The isolated harness itself is not an ITK parser test.

Native ITK validation is now available for current head 70e68533ea2dbf43da546f3ccfdcbf49c31b33d9. The Linux ARM64 job compiled with zero compiler errors and warnings and passed all 4,722 configured tests. All six Bruker2dseqImageIO cases passed, including the short-array and unsupported-dimension regressions, the ParaVision 360 dataset case, oversized RLE expansion, unexpected scaling-array length, and slice-step handling.

The current-head platform matrix has completed: 18 checks passed, with no pending or failing reported checks. The only skipped job is publish-doxygen-tagfile. Completed checks include Windows C++, macOS and Ubuntu Pixi C++, x86_64 Rosetta, ARM Python, Azure Linux and macOS Python, pre-commit, Doxygen, performance and documentation. The native Linux ARM64 test results above are reused; no tests were repeated for this status update.

Ready for maintainer review. The scope limits above still apply; maintainer review is needed before merging.

@github-actions github-actions Bot added type:Bug Inconsistencies or issues which will cause an incorrect result under some or all circumstances type:Testing Ensure that the purpose of a class is met/the results on a wide set of test cases are correct area:IO Issues affecting the IO module labels Oct 22, 2026
@jdotc1
jdotc1 marked this pull request as ready for review October 23, 2026 04:28
@greptile-apps

greptile-apps Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerView in GreptileConfidence Score: 5/5

[Medium impact] The PR appears safe to merge within its stated scope.

Summary

The PR checks Bruker geometry array lengths before reading their elements and rejects unsupported VisuCoreDim values before converting them.

  • The Bruker reader checks dimensions and array sizes before setting image geometry.

Reviews (1) · Last reviewed commit: "COMP: Match Bruker array cardinality com..." · Reviewed by Greptile

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:IO Issues affecting the IO module type:Bug Inconsistencies or issues which will cause an incorrect result under some or all circumstances type:Testing Ensure that the purpose of a class is met/the results on a wide set of test cases are correct

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant