diff options
author | marha <marha@users.sourceforge.net> | 2012-10-15 16:56:14 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-10-15 16:56:14 +0200 |
commit | f15a40afaf6d1b3a4841d25631f947da1b289f89 (patch) | |
tree | f2066dc8caaf2fddd3b88251d18839d5878bfd9b /mesalib/src/gallium/auxiliary/util/u_transfer.c | |
parent | f2a3390c8b2052e8f65d3502dd703b5c5b23a28e (diff) | |
parent | 54db46582aba2252d544fa3956522f9ef06b49cb (diff) | |
download | vcxsrv-f15a40afaf6d1b3a4841d25631f947da1b289f89.tar.gz vcxsrv-f15a40afaf6d1b3a4841d25631f947da1b289f89.tar.bz2 vcxsrv-f15a40afaf6d1b3a4841d25631f947da1b289f89.zip |
Merge remote-tracking branch 'origin/released'
* origin/released:
xserver mesa pixman git update 15 oct 2012
Conflicts:
xorg-server/hw/xwin/InitOutput.c
Diffstat (limited to 'mesalib/src/gallium/auxiliary/util/u_transfer.c')
-rw-r--r-- | mesalib/src/gallium/auxiliary/util/u_transfer.c | 50 |
1 files changed, 7 insertions, 43 deletions
diff --git a/mesalib/src/gallium/auxiliary/util/u_transfer.c b/mesalib/src/gallium/auxiliary/util/u_transfer.c index 0b2679ffd..8b4c36592 100644 --- a/mesalib/src/gallium/auxiliary/util/u_transfer.c +++ b/mesalib/src/gallium/auxiliary/util/u_transfer.c @@ -31,17 +31,13 @@ void u_default_transfer_inline_write( struct pipe_context *pipe, usage |= PIPE_TRANSFER_DISCARD_RANGE; } - transfer = pipe->get_transfer(pipe, - resource, - level, - usage, - box ); - if (transfer == NULL) - goto out; - - map = pipe_transfer_map(pipe, transfer); + map = pipe->transfer_map(pipe, + resource, + level, + usage, + box, &transfer); if (map == NULL) - goto out; + return; if (resource->target == PIPE_BUFFER) { assert(box->height == 1); @@ -68,12 +64,7 @@ void u_default_transfer_inline_write( struct pipe_context *pipe, } } -out: - if (map) - pipe_transfer_unmap(pipe, transfer); - - if (transfer) - pipe_transfer_destroy(pipe, transfer); + pipe_transfer_unmap(pipe, transfer); } @@ -94,34 +85,7 @@ void u_default_transfer_flush_region( struct pipe_context *pipe, */ } -struct pipe_transfer * u_default_get_transfer(struct pipe_context *context, - struct pipe_resource *resource, - unsigned level, - unsigned usage, - const struct pipe_box *box) -{ - struct pipe_transfer *transfer = CALLOC_STRUCT(pipe_transfer); - if (transfer == NULL) - return NULL; - - transfer->resource = resource; - transfer->level = level; - transfer->usage = usage; - transfer->box = *box; - - /* Note strides are zero, this is ok for buffers, but not for - * textures 2d & higher at least. - */ - return transfer; -} - void u_default_transfer_unmap( struct pipe_context *pipe, struct pipe_transfer *transfer ) { } - -void u_default_transfer_destroy(struct pipe_context *pipe, - struct pipe_transfer *transfer) -{ - FREE(transfer); -} |