Skip to content

Commit

Permalink
pixman/vnc: remove dead code.
Browse files Browse the repository at this point in the history
Switching the vnc server framebuffer to use 32bpp unconditionally
turns the code bits which handle 8 and 16 bpp into dead code.
Remove them.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
  • Loading branch information
kraxel committed Nov 1, 2012
1 parent 47683d6 commit 9436268
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 87 deletions.
32 changes: 0 additions & 32 deletions ui/vnc-enc-hextile.c
Expand Up @@ -32,30 +32,10 @@ static void hextile_enc_cord(uint8_t *ptr, int x, int y, int w, int h)
ptr[1] = (((w - 1) & 0x0F) << 4) | ((h - 1) & 0x0F);
}

#define BPP 8
#include "vnc-enc-hextile-template.h"
#undef BPP

#define BPP 16
#include "vnc-enc-hextile-template.h"
#undef BPP

#define BPP 32
#include "vnc-enc-hextile-template.h"
#undef BPP

#define GENERIC
#define BPP 8
#include "vnc-enc-hextile-template.h"
#undef BPP
#undef GENERIC

#define GENERIC
#define BPP 16
#include "vnc-enc-hextile-template.h"
#undef BPP
#undef GENERIC

#define GENERIC
#define BPP 32
#include "vnc-enc-hextile-template.h"
Expand Down Expand Up @@ -89,24 +69,12 @@ void vnc_hextile_set_pixel_conversion(VncState *vs, int generic)
{
if (!generic) {
switch (VNC_SERVER_FB_BITS) {
case 8:
vs->hextile.send_tile = send_hextile_tile_8;
break;
case 16:
vs->hextile.send_tile = send_hextile_tile_16;
break;
case 32:
vs->hextile.send_tile = send_hextile_tile_32;
break;
}
} else {
switch (VNC_SERVER_FB_BITS) {
case 8:
vs->hextile.send_tile = send_hextile_tile_generic_8;
break;
case 16:
vs->hextile.send_tile = send_hextile_tile_generic_16;
break;
case 32:
vs->hextile.send_tile = send_hextile_tile_generic_32;
break;
Expand Down
64 changes: 27 additions & 37 deletions ui/vnc-enc-tight.c
Expand Up @@ -671,52 +671,42 @@ DEFINE_GRADIENT_FILTER_FUNCTION(32)
* that case new color will be stored in *colorPtr.
*/

#define DEFINE_CHECK_SOLID_FUNCTION(bpp) \
\
static bool \
check_solid_tile##bpp(VncState *vs, int x, int y, int w, int h, \
uint32_t* color, bool samecolor) \
{ \
VncDisplay *vd = vs->vd; \
uint##bpp##_t *fbptr; \
uint##bpp##_t c; \
int dx, dy; \
\
fbptr = vnc_server_fb_ptr(vd, x, y); \
\
c = *fbptr; \
if (samecolor && (uint32_t)c != *color) { \
return false; \
} \
\
for (dy = 0; dy < h; dy++) { \
for (dx = 0; dx < w; dx++) { \
if (c != fbptr[dx]) { \
return false; \
} \
} \
fbptr = (uint##bpp##_t *) \
((uint8_t *)fbptr + vnc_server_fb_stride(vd)); \
} \
\
*color = (uint32_t)c; \
return true; \
static bool
check_solid_tile32(VncState *vs, int x, int y, int w, int h,
uint32_t *color, bool samecolor)
{
VncDisplay *vd = vs->vd;
uint32_t *fbptr;
uint32_t c;
int dx, dy;

fbptr = vnc_server_fb_ptr(vd, x, y);

c = *fbptr;
if (samecolor && (uint32_t)c != *color) {
return false;
}

DEFINE_CHECK_SOLID_FUNCTION(32)
DEFINE_CHECK_SOLID_FUNCTION(16)
DEFINE_CHECK_SOLID_FUNCTION(8)
for (dy = 0; dy < h; dy++) {
for (dx = 0; dx < w; dx++) {
if (c != fbptr[dx]) {
return false;
}
}
fbptr = (uint32_t *)
((uint8_t *)fbptr + vnc_server_fb_stride(vd));
}

*color = (uint32_t)c;
return true;
}

static bool check_solid_tile(VncState *vs, int x, int y, int w, int h,
uint32_t* color, bool samecolor)
{
switch (VNC_SERVER_FB_BYTES) {
case 4:
return check_solid_tile32(vs, x, y, w, h, color, samecolor);
case 2:
return check_solid_tile16(vs, x, y, w, h, color, samecolor);
default:
return check_solid_tile8(vs, x, y, w, h, color, samecolor);
}
}

Expand Down
18 changes: 0 additions & 18 deletions ui/vnc.c
Expand Up @@ -666,24 +666,6 @@ static void vnc_write_pixels_generic(VncState *vs,
vnc_convert_pixel(vs, buf, pixels[i]);
vnc_write(vs, buf, vs->client_pf.bytes_per_pixel);
}
} else if (VNC_SERVER_FB_BYTES == 2) {
uint16_t *pixels = pixels1;
int n, i;
n = size >> 1;
for (i = 0; i < n; i++) {
vnc_convert_pixel(vs, buf, pixels[i]);
vnc_write(vs, buf, vs->client_pf.bytes_per_pixel);
}
} else if (VNC_SERVER_FB_BYTES == 1) {
uint8_t *pixels = pixels1;
int n, i;
n = size;
for (i = 0; i < n; i++) {
vnc_convert_pixel(vs, buf, pixels[i]);
vnc_write(vs, buf, vs->client_pf.bytes_per_pixel);
}
} else {
fprintf(stderr, "%s: VncState color depth not supported\n", __func__);
}
}

Expand Down

0 comments on commit 9436268

Please sign in to comment.