summaryrefslogtreecommitdiff
path: root/base/gxdownscale.c
diff options
context:
space:
mode:
authorRobin Watts <Robin.Watts@artifex.com>2021-04-28 20:34:17 +0100
committerRobin Watts <Robin.Watts@artifex.com>2021-05-03 12:05:05 +0100
commit2b5118c3fcb8e5cc58c9a3d87ad9fe327eece117 (patch)
tree0bff7932ad9f2ea74d30dfcb33c2b4942005ed92 /base/gxdownscale.c
parent623be737dbf836d5f037f0071900f645f24cf6cc (diff)
downloadghostpdl-2b5118c3fcb8e5cc58c9a3d87ad9fe327eece117.tar.gz
Remove get_bits in favour of get_bits_rectangle.
Diffstat (limited to 'base/gxdownscale.c')
-rw-r--r--base/gxdownscale.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/base/gxdownscale.c b/base/gxdownscale.c
index fd51a6954..3d36d661d 100644
--- a/base/gxdownscale.c
+++ b/base/gxdownscale.c
@@ -1991,8 +1991,22 @@ static int
getbits_chunky_line(gx_downscale_liner *liner_, void *buffer, int row)
{
liner_getbits_chunky *liner = (liner_getbits_chunky *)liner_;
+ gs_int_rect rect;
+ gs_get_bits_params_t params;
- return (*dev_proc(liner->dev, get_bits))(liner->dev, row, buffer, NULL);
+ rect.p.x = 0;
+ rect.p.y = row;
+ rect.q.x = liner->dev->width;
+ rect.q.y = row+1;
+ params.x_offset = 0;
+ params.raster = bitmap_raster(liner->dev->width * liner->dev->color_info.depth);
+ params.options = (GB_ALIGN_ANY |
+ GB_RETURN_COPY |
+ GB_OFFSET_0 |
+ GB_RASTER_STANDARD | GB_PACKING_CHUNKY |
+ GB_COLORS_NATIVE | GB_ALPHA_NONE);
+ params.data[0] = buffer;
+ return (*dev_proc(liner->dev, get_bits_rectangle))(liner->dev, &rect, &params, NULL);
}
static void