File: struct-padding.patch

package info (click to toggle)
ismrmrd 1.14.3-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,564 kB
  • sloc: cpp: 6,439; ansic: 2,276; xml: 1,025; sh: 187; python: 72; makefile: 42
file content (32 lines) | stat: -rw-r--r-- 1,907 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Description: pad the ISMRMRD_WaveformHeader.
 This change makes sure that the ISMRMRD_Waveform has the same size and
 elements offsets, be it on 64-bit or 32-bit aligned platforms.  This
 change fixes the following issue caught on i386, and possibly other
 32-bit architectures:
 .
        In file included from /build/reproducible-path/ismrmrd-1.14.3/libsrc/waveform.cpp:7:
        /build/reproducible-path/ismrmrd-1.14.3/include/ismrmrd/waveform.h:51:46: error: static assertion failed: ISMRMRD_WaveformHeader is not 40 bytes
           51 | static_assert(sizeof(ISMRMRD_WaveformHeader) == 40, "ISMRMRD_WaveformHeader is not 40 bytes");
              |               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
        /build/reproducible-path/ismrmrd-1.14.3/include/ismrmrd/waveform.h:51:46: note: the comparison reduces to '(36 == 40)'
        /build/reproducible-path/ismrmrd-1.14.3/include/ismrmrd/waveform.h:53:55: error: static assertion failed: ISMRMRD WaveformHeader flags offset is not correct
           53 | static_assert(offsetof(ISMRMRD_WaveformHeader, flags) == 8, "ISMRMRD WaveformHeader flags offset is not correct");
              |                                                       ^
        /build/reproducible-path/ismrmrd-1.14.3/include/ismrmrd/waveform.h:53:55: note: the comparison reduces to '(4 == 8)'
Author: Étienne Mollier <emollier@debian.org>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1119868
Forwarded: https://github.com/ismrmrd/ismrmrd/pull/265
Last-Update: 2025-11-28
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- ismrmrd.orig/include/ismrmrd/waveform.h
+++ ismrmrd/include/ismrmrd/waveform.h
@@ -26,6 +26,8 @@
 typedef struct ISMRMRD_WaveformHeader
 {
     uint16_t version;
+    uint16_t pad1;
+    uint32_t pad2;
     /**< First unsigned int indicates the version */
     uint64_t flags;
     /**< bit field with flags */