charging scroll fix (trunk only)
A while back some code ended up in the wrong order, resulting in null pointer dereference when reading a not-yet-discovered scroll of charging.
This commit is contained in:
+4
-4
@@ -1179,15 +1179,15 @@ struct obj *sobj; /* scroll, or fake spellbook object for scroll-like spell */
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
/* known = TRUE; -- handled inline here */
|
/* known = TRUE; -- handled inline here */
|
||||||
|
if (!already_known) {
|
||||||
|
pline("This is a charging scroll.");
|
||||||
|
learnscroll(sobj);
|
||||||
|
}
|
||||||
/* use it up now to prevent it from showing in the
|
/* use it up now to prevent it from showing in the
|
||||||
getobj picklist because the "disappears" message
|
getobj picklist because the "disappears" message
|
||||||
was already delivered */
|
was already delivered */
|
||||||
useup(sobj);
|
useup(sobj);
|
||||||
sobj = 0; /* it's gone */
|
sobj = 0; /* it's gone */
|
||||||
if (!already_known) {
|
|
||||||
pline("This is a charging scroll.");
|
|
||||||
learnscroll(sobj);
|
|
||||||
}
|
|
||||||
otmp = getobj(all_count, "charge");
|
otmp = getobj(all_count, "charge");
|
||||||
if (otmp) recharge(otmp, scursed ? -1 : sblessed ? 1 : 0);
|
if (otmp) recharge(otmp, scursed ? -1 : sblessed ? 1 : 0);
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user