History

drivers/ide/{cs5530.c,sc1200.c}: Move a dereference below a NULL test

In each case, if the NULL test is necessary, then the dereference should be moved below the NULL test. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ type T; expression E; identifier i,fld; statement S; @@ - T i = E->fld; + T i; ... when != E when != i if (E == NULL) S + i = E->fld; // </smpl>

Julia Lawall committed 17 years ago

Commit 9ecab6e1 parent 3d44cc32 files · +4 −2Browse files

Unified · Split

2 files
  1. drivers/ide/cs5530.c +2 −1
  2. drivers/ide/sc1200.c +2 −1
drivers/ide/cs5530.c+2−1
@@ -81,11 +81,12 @@ static u8 cs5530_udma_filter(ide_drive_t *drive) · 80 unmodified lines
81{81{
82 ide_hwif_t *hwif = drive->hwif;82 ide_hwif_t *hwif = drive->hwif;
83 ide_drive_t *mate = ide_get_pair_dev(drive);83 ide_drive_t *mate = ide_get_pair_dev(drive);
84 u16 *mateid = mate->id;84 u16 *mateid;
85 u8 mask = hwif->ultra_mask;85 u8 mask = hwif->ultra_mask;
86 86
87 if (mate == NULL)87 if (mate == NULL)
88 goto out;88 goto out;
89 mateid = mate->id;
89 90
90 if (ata_id_has_dma(mateid) && __ide_dma_bad_drive(mate) == 0) {91 if (ata_id_has_dma(mateid) && __ide_dma_bad_drive(mate) == 0) {
91 if ((mateid[ATA_ID_FIELD_VALID] & 4) &&92 if ((mateid[ATA_ID_FIELD_VALID] & 4) &&
drivers/ide/sc1200.c+2−1
@@ -104,11 +104,12 @@ static u8 sc1200_udma_filter(ide_drive_t *drive) · 103 unmodified lines
104{104{
105 ide_hwif_t *hwif = drive->hwif;105 ide_hwif_t *hwif = drive->hwif;
106 ide_drive_t *mate = ide_get_pair_dev(drive);106 ide_drive_t *mate = ide_get_pair_dev(drive);
107 u16 *mateid = mate->id;107 u16 *mateid;
108 u8 mask = hwif->ultra_mask;108 u8 mask = hwif->ultra_mask;
109 109
110 if (mate == NULL)110 if (mate == NULL)
111 goto out;111 goto out;
112 mateid = mate->id;
112 113
113 if (ata_id_has_dma(mateid) && __ide_dma_bad_drive(mate) == 0) {114 if (ata_id_has_dma(mateid) && __ide_dma_bad_drive(mate) == 0) {
114 if ((mateid[ATA_ID_FIELD_VALID] & 4) &&115 if ((mateid[ATA_ID_FIELD_VALID] & 4) &&