Ver código fonte

gallium/util: simplify util_framebuffer_state_equal()

And copy width, height in util_copy_framebuffer_state().
tags/7.8-rc1
Brian Paul 15 anos atrás
pai
commit
8f2a173663

+ 11
- 5
src/gallium/auxiliary/util/u_surface.c Ver arquivo

@@ -122,24 +122,27 @@ boolean
util_framebuffer_state_equal(const struct pipe_framebuffer_state *dst,
const struct pipe_framebuffer_state *src)
{
boolean changed = FALSE;
unsigned i;

if (dst->width != src->width ||
dst->height != src->height)
return FALSE;

for (i = 0; i < Elements(src->cbufs); i++) {
if (dst->cbufs[i] != src->cbufs[i]) {
changed = TRUE;
return FALSE;
}
}

if (dst->nr_cbufs != src->nr_cbufs) {
changed = TRUE;
return FALSE;
}

if (dst->zsbuf != src->zsbuf) {
changed = TRUE;
return FALSE;
}

return changed;
return TRUE;
}


@@ -152,6 +155,9 @@ util_copy_framebuffer_state(struct pipe_framebuffer_state *dst,
{
unsigned i;

dst->width = src->width;
dst->height = src->height;

for (i = 0; i < Elements(src->cbufs); i++) {
pipe_surface_reference(&dst->cbufs[i], src->cbufs[i]);
}

+ 5
- 5
src/gallium/auxiliary/util/u_surface.h Ver arquivo

@@ -30,11 +30,7 @@


#include "pipe/p_compiler.h"


struct pipe_screen;
struct pipe_texture;
struct pipe_surface;
#include "pipe/p_state.h"


/**
@@ -75,4 +71,8 @@ util_copy_framebuffer_state(struct pipe_framebuffer_state *dst,
const struct pipe_framebuffer_state *src);


extern void
util_unreference_framebuffer_state(struct pipe_framebuffer_state *fb);


#endif /* U_SURFACE_H */

Carregando…
Cancelar
Salvar