It's not obvious (and you probably already know this), but stash has its reflog, so failed pop doesn't destroy the thing you popped. Alas, it can destroy the changes in the work tree you popped onto.
@b0rk oh. Then I was mistaken and you can lose the thing being popped :( (I assume it doesn't get added to the global reflog?)
@robryk it does not sadly
@b0rk so the only way to get it back is to find the hash in terminal scroll back. Sigh...
@robryk someone pointed out a while back that you can also use git fsck
@robryk yeah it's super weird -- basically stash treates the reflog like a stack instead of it being append only