> + for (i = 0; i < ap->sbDrvrCount; i++) { > + struct apple_drvr_descriptor sdd; > + memcpy(&sdd, &ap->sb_dd[i], sizeof(ap->sb_dd[0])); > + swap_apple_drvr_descriptor(&sdd); > + memcpy(&ap->sb_dd[i], &sdd, sizeof(ap->sb_dd[0])); > + }
i'm not sure this is going to work. see "The problem" in: https://mail-index.netbsd.org/tech-kern/2003/08/11/0001.html i think your original change is better. it might not be portable but it correctly describes the structure, and the above code is not well-defined anyway. .mrg.