Firstly, this fix fixes the limited ability to add your own closets to the code. By default, it used 'emcloset1' as a icon_state when opening nearly all closets. I have changed this so that it reflects the 'orig_closed' variable, which (contrary to the name) holds the string for the open value of closets.
Now it is possible to add new 'closet' items with custom open icons by adding it like this:
/obj/closet/coffin
desc = "It's a coffin."
name = "Coffin"
icon_state="coffin"
original="coffin"
orig_closed = "coffino"
And as the code would suggest, I have also added in a coffin to replace the default 'closet' that has been used as coffins for an age. The patch also adds two icons - a coffin and coffin open icon ('coffin' and 'coffino') to stationobjs.dmi.
Attached is the patch file.
Closets use absolute string & coffin patch.