Skip to content

Commit 6eacaf5

Browse files
authored
Merge pull request #593 from jstutters/avoid-extra-padding
Stop adding extraneous metadata padding
2 parents ee4ce2a + dbfb71d commit 6eacaf5

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

nibabel/nifti1.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -334,7 +334,8 @@ def get_sizeondisk(self):
334334
size = len(self._mangle(self._content))
335335
size += 8
336336
# extensions size has to be a multiple of 16 bytes
337-
size += 16 - (size % 16)
337+
if size % 16 != 0:
338+
size += 16 - (size % 16)
338339
return size
339340

340341
def __repr__(self):

nibabel/tests/test_nifti1.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1075,6 +1075,9 @@ def test_extension_basics():
10751075
assert_true(ext.get_sizeondisk() == 16)
10761076
assert_true(ext.get_content() == raw)
10771077
assert_true(ext.get_code() == 6)
1078+
# Test that extensions already aligned to 16 bytes are not padded
1079+
ext = Nifti1Extension('comment', b'x' * 24)
1080+
assert_true(ext.get_sizeondisk() == 32)
10781081

10791082

10801083
def test_ext_eq():

0 commit comments

Comments
 (0)