d3d9: Use unsafe_impl_from_IDirect3DIndexBuffer9 for an app provided iface.
diff --git a/dlls/d3d9/buffer.c b/dlls/d3d9/buffer.c
index 8a86e6e..7d35927 100644
--- a/dlls/d3d9/buffer.c
+++ b/dlls/d3d9/buffer.c
@@ -19,6 +19,7 @@
  */
 
 #include "config.h"
+#include <assert.h>
 #include "d3d9_private.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(d3d9);
@@ -573,3 +574,12 @@
 
     return D3D_OK;
 }
+
+IDirect3DIndexBuffer9Impl *unsafe_impl_from_IDirect3DIndexBuffer9(IDirect3DIndexBuffer9 *iface)
+{
+    if (!iface)
+        return NULL;
+    assert(iface->lpVtbl == &d3d9_indexbuffer_vtbl);
+
+    return impl_from_IDirect3DIndexBuffer9(iface);
+}