From b5b59fafd94909424e06795571906a1b26125190 Mon Sep 17 00:00:00 2001 From: Chris Markiewicz Date: Sun, 6 Sep 2015 12:08:56 -0400 Subject: [PATCH 1/2] BF: Misplaced parenthesis Always returned `False`. --- nibabel/nifti1.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nibabel/nifti1.py b/nibabel/nifti1.py index e2666609e2..82e4531f66 100644 --- a/nibabel/nifti1.py +++ b/nibabel/nifti1.py @@ -820,7 +820,7 @@ def get_qform(self, coded=False): quat = self.get_qform_quaternion() R = quat2mat(quat) vox = hdr['pixdim'][1:4].copy() - if np.any(vox) < 0: + if np.any(vox < 0): raise HeaderDataError('pixdims[1,2,3] should be positive') qfac = hdr['pixdim'][0] if qfac not in (-1, 1): From 08a20a485dca87f41ef5386fd6de2c9b6d9477c4 Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Tue, 8 Sep 2015 10:58:39 -0400 Subject: [PATCH 2/2] TST: Verify pixdim check for non-negative values --- nibabel/tests/test_nifti1.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nibabel/tests/test_nifti1.py b/nibabel/tests/test_nifti1.py index a40367d877..57b58bf729 100644 --- a/nibabel/tests/test_nifti1.py +++ b/nibabel/tests/test_nifti1.py @@ -448,6 +448,10 @@ def test_qform(self): assert_true, ehdr['qform_code'] == xfas['scanner'] ehdr.set_qform(A, xfas['aligned']) assert_true, ehdr['qform_code'] == xfas['aligned'] + # Test pixdims[1,2,3] are checked for negatives + for dims in ((-1, 1, 1), (1, -1, 1), (1, 1, -1)): + ehdr['pixdim'][1:4] = dims + assert_raises(HeaderDataError, ehdr.get_qform) def test_sform(self): # Test roundtrip case