}
CSMT_ITEM_NO_WAIT_WITH_COUNTER(nine_context_box_upload,
- ARG_BIND_REF(struct NineUnknown, dst),
+ ARG_BIND_REF(struct NineUnknown, src_ref),
ARG_BIND_RES(struct pipe_resource, res),
ARG_VAL(unsigned, level),
ARG_COPY_REF(struct pipe_box, dst_box),
struct pipe_transfer *transfer = NULL;
uint8_t *map;
- /* We just bind dst for the bind count */
- (void)dst;
+ /* Binding src_ref avoids release before upload */
+ (void)src_ref;
map = pipe->transfer_map(pipe,
res,
void
nine_context_box_upload(struct NineDevice9 *device,
unsigned *counter,
- struct NineUnknown *dst,
+ struct NineUnknown *src_ref,
struct pipe_resource *res,
unsigned level,
const struct pipe_box *dst_box,
nine_context_box_upload(This->base.base.device,
&From->pending_uploads_counter,
- (struct NineUnknown *)This,
+ (struct NineUnknown *)From,
r_dst,
This->level,
&dst_box,
nine_context_box_upload(This->base.device,
&From->pending_uploads_counter,
- (struct NineUnknown *)This,
+ (struct NineUnknown *)From,
r_dst,
This->level,
&dst_box,