This is a relatively old bug that sometimes works a bit alarming. I never had it cause a crash, though.
When you attempt to pick up items from a tile affected by an item damaging field (or any other effect that can remove items), the item indices can change, causing the pickup function to grab unintended items or even items that don’t exist.
For example, attempting to “save” an item from a freshly dead spitter corpse pile will often pick up the corpse itself. Sometimes instead of just picking up the corpse, it will spawn another one, this time with a name. So far I’ve seen 2 names: spitter zombie corpse “of INCONSPICUOUS” and “of null”.
I managed to replicate item duping by dropping 1 brandy, 1 gasoline and 1 non-flammable item (power armor) on one tile, lighting it up with a bionic (takes no time), then trying to pick up both the liquids. Instead of picking a liquid, I picked up a copy of the power armor.