static analyzer warnings for mon.c
src/mon.c(2370): warning: Dereferencing NULL pointer '((mtmp2))->mextra->epri'. src/mon.c(2375): warning: Dereferencing NULL pointer '((mtmp2))->mextra->eshk'. src/mon.c(2380): warning: Dereferencing NULL pointer '((mtmp2))->mextra->emin'. src/mon.c(2385): warning: Dereferencing NULL pointer '((mtmp2))->mextra->edog'. src/mon.c(4419): warning: Dereferencing NULL pointer 'ga.animal_list'.
This commit is contained in:
@@ -2362,26 +2362,31 @@ copy_mextra(struct monst* mtmp2, struct monst* mtmp1)
|
|||||||
if (EGD(mtmp1)) {
|
if (EGD(mtmp1)) {
|
||||||
if (!EGD(mtmp2))
|
if (!EGD(mtmp2))
|
||||||
newegd(mtmp2);
|
newegd(mtmp2);
|
||||||
|
assert(has_egd(mtmp2));
|
||||||
*EGD(mtmp2) = *EGD(mtmp1);
|
*EGD(mtmp2) = *EGD(mtmp1);
|
||||||
}
|
}
|
||||||
if (EPRI(mtmp1)) {
|
if (EPRI(mtmp1)) {
|
||||||
if (!EPRI(mtmp2))
|
if (!EPRI(mtmp2))
|
||||||
newepri(mtmp2);
|
newepri(mtmp2);
|
||||||
|
assert(has_epri(mtmp2));
|
||||||
*EPRI(mtmp2) = *EPRI(mtmp1);
|
*EPRI(mtmp2) = *EPRI(mtmp1);
|
||||||
}
|
}
|
||||||
if (ESHK(mtmp1)) {
|
if (ESHK(mtmp1)) {
|
||||||
if (!ESHK(mtmp2))
|
if (!ESHK(mtmp2))
|
||||||
neweshk(mtmp2);
|
neweshk(mtmp2);
|
||||||
|
assert(has_eshk(mtmp2));
|
||||||
*ESHK(mtmp2) = *ESHK(mtmp1);
|
*ESHK(mtmp2) = *ESHK(mtmp1);
|
||||||
}
|
}
|
||||||
if (EMIN(mtmp1)) {
|
if (EMIN(mtmp1)) {
|
||||||
if (!EMIN(mtmp2))
|
if (!EMIN(mtmp2))
|
||||||
newemin(mtmp2);
|
newemin(mtmp2);
|
||||||
|
assert(has_emin(mtmp2));
|
||||||
*EMIN(mtmp2) = *EMIN(mtmp1);
|
*EMIN(mtmp2) = *EMIN(mtmp1);
|
||||||
}
|
}
|
||||||
if (EDOG(mtmp1)) {
|
if (EDOG(mtmp1)) {
|
||||||
if (!EDOG(mtmp2))
|
if (!EDOG(mtmp2))
|
||||||
newedog(mtmp2);
|
newedog(mtmp2);
|
||||||
|
assert(has_edog(mtmp2));
|
||||||
*EDOG(mtmp2) = *EDOG(mtmp1);
|
*EDOG(mtmp2) = *EDOG(mtmp1);
|
||||||
}
|
}
|
||||||
if (has_mcorpsenm(mtmp1))
|
if (has_mcorpsenm(mtmp1))
|
||||||
@@ -4415,7 +4420,7 @@ pick_animal(void)
|
|||||||
|
|
||||||
if (!ga.animal_list)
|
if (!ga.animal_list)
|
||||||
mon_animal_list(TRUE);
|
mon_animal_list(TRUE);
|
||||||
|
assert(ga.animal_list != 0);
|
||||||
res = ga.animal_list[rn2(ga.animal_list_count)];
|
res = ga.animal_list[rn2(ga.animal_list_count)];
|
||||||
/* rogue level should use monsters represented by uppercase letters
|
/* rogue level should use monsters represented by uppercase letters
|
||||||
only, but since chameleons aren't generated there (not uppercase!)
|
only, but since chameleons aren't generated there (not uppercase!)
|
||||||
|
|||||||
Reference in New Issue
Block a user