diff --git a/code/defines/procs/hud.dm b/code/defines/procs/hud.dm
index 04afb6c63e..be678b8397 100644
--- a/code/defines/procs/hud.dm
+++ b/code/defines/procs/hud.dm
@@ -12,7 +12,7 @@ proc/process_med_hud(var/mob/M, var/local_scanner, var/mob/Alt)
if(P.Mob.see_invisible < patient.invisibility)
continue
- if(!(local_scanner || hassensorlevel(P, SUIT_SENSOR_VITAL)))
+ if(!(local_scanner || hassensorlevel(patient, SUIT_SENSOR_VITAL)))
continue
P.Client.images += patient.hud_list[HEALTH_HUD]
diff --git a/code/modules/paperwork/handlabeler.dm b/code/modules/paperwork/handlabeler.dm
index 3722d586e4..fe519e01d4 100644
--- a/code/modules/paperwork/handlabeler.dm
+++ b/code/modules/paperwork/handlabeler.dm
@@ -33,6 +33,9 @@
if(issilicon(A))
user << "The label refuses to stick to [A.name]."
return
+ if(isobserver(A))
+ user << "[src] passes through [A.name]."
+ return
if(istype(A, /obj/item/weapon/reagent_containers/glass))
user << "The label can't stick to the [A.name]. (Try using a pen)"
return