> +�� �� if (!device || !camera)
> +�� �� �� �� return D3DRMERR_BADOBJECT;
> +�� �� if (!viewport)
> +�� �� �� �� return D3DRMERR_BADVALUE;
These checks are redundant, Init() does that as well.
> +�� �� ok(ref4 == frame_ref, "Expected ref4 == frame_ref, got frame_ref = %u, ref4 = %u.\n", frame_ref, ref4);
> +
> +�� �� device_ref = get_refcount((IUnknown *)device1);
> +�� �� frame_ref = get_refcount((IUnknown *)frame);
The get_refcount here seems redundant because you've just shown that it is back to where it used to be.