@ glotzipapa:
Ich sehe gerade, dass du M-Reimer's PullRequests übernommen hast, aber den offenen von olebowle von Dezember 2014 noch nicht.
Hat das einen Grund?
Ohne das packed Attribut für IRMP_DATA ist sizeof event in https://github.com/realglotzi/…b/master/irmplircd.c#L196
größer als die Größe von IRMP_DATA von https://github.com/svn2github/…/master/irmpsystem.h#L146
da bei dir IRMP_DATA nicht gepackt ist
https://github.com/realglotzi/…ob/master/irmplircd.c#L53
und es wird zu viel gelesen.
Edit: Ich hab noch mal drüber nachgedacht. Die Konsequenz ist eigentlich nur, dass das Padding-Byte von flags überschrieben wird. Insofern tut das nicht weh, und man kann es auch so lassen. Trotzdem wäre es "sauberer" IRMP_DATA zu packen. (Rein theoretisch geht erst dann was schief, wenn noch mehr Padding Bytes dazu kämen. Ein Array in ein Struct mit Padding Bytes zu kopieren [das macht der read], kann unerwartete Ergebnisse bringen. In diesem Fall tut es aber trotzdem. Auf anderen Architekturen könnte das aber gründlich schief gehen).