diff --git a/src/PutBEvent.c b/src/PutBEvent.c
index f7b74b31deeba41a47816a53bbccf5319810ffb3..0f9df34290b2d2810b58234e054fb08944f4ba8e 100644
--- a/src/PutBEvent.c
+++ b/src/PutBEvent.c
@@ -79,22 +79,9 @@ XPutBackEvent (
     register XEvent *event)
 	{
 	int ret;
-	xEvent wire = {0};
-	XEvent lib = {0};
-	Status (*fp)(Display *, XEvent *, xEvent *);
-	int type = event->type & 0177;
 
 	LockDisplay(dpy);
-	fp = dpy->wire_vec[type];
-	if (fp == NULL)
-		fp = _XEventToWire;
-	ret = (*fp)(dpy, event, &wire);
-	if (ret)
-	{
-		ret = (*dpy->event_vec[type])(dpy, &lib, &wire);
-		if (ret)
-			ret = _XPutBackEvent(dpy, &lib);
-	}
+	ret = _XPutBackEvent(dpy, event);
 	UnlockDisplay(dpy);
 	return ret;
 	}