- MainInterface *mi = (MainInterface *)ptrval.p_address;
- msg_Dbg (obj, "requesting window (%p)...", mi);
+ msg_Dbg (obj, "requesting window...");
+ QPointer<MainInterface> *miP = (QPointer<MainInterface> *)ptrval.p_address;
+ miP = new QPointer<MainInterface> (*miP); /* create our own copy */
+ vlc_object_release (intf);
+
+ if (miP->isNull ())
+ return VLC_EGENERIC;