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.
break;
}
/* 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
getobj picklist because the "disappears" message
was already delivered */
useup(sobj);
sobj = 0; /* it's gone */
- if (!already_known) {
- pline("This is a charging scroll.");
- learnscroll(sobj);
- }
otmp = getobj(all_count, "charge");
if (otmp) recharge(otmp, scursed ? -1 : sblessed ? 1 : 0);
break;