diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm
index a65d4dffdf..1332ce7370 100644
--- a/code/game/objects/items/devices/PDA/PDA.dm
+++ b/code/game/objects/items/devices/PDA/PDA.dm
@@ -1247,19 +1247,24 @@ var/global/list/obj/item/device/pda/PDAs = list()
if(issilicon(usr))
return
- if(can_use(usr) && !isnull(cartridge))
- cartridge.forceMove(get_turf(src))
- if(ismob(loc))
- var/mob/M = loc
- M.put_in_hands(cartridge)
- mode = 0
- scanmode = 0
- if (cartridge.radio)
- cartridge.radio.hostpda = null
- to_chat(usr, "You remove \the [cartridge] from the [name].")
- cartridge = null
- else
+ if(!can_use(usr))
to_chat(usr, "You cannot do this while restrained.")
+ return
+
+ if(isnull(cartridge))
+ to_chat(usr, "There's no cartridge to eject.")
+ return
+
+ cartridge.forceMove(get_turf(src))
+ if(ismob(loc))
+ var/mob/M = loc
+ M.put_in_hands(cartridge)
+ mode = 0
+ scanmode = 0
+ if (cartridge.radio)
+ cartridge.radio.hostpda = null
+ to_chat(usr, "You remove \the [cartridge] from the [name].")
+ cartridge = null
/obj/item/device/pda/proc/id_check(mob/user as mob, choice as num)//To check for IDs; 1 for in-pda use, 2 for out of pda use.
if(choice == 1)