Index: filter/raster.c =================================================================== --- a/filter/raster.c (revision 12451) +++ b/filter/raster.c (working copy) @@ -256,7 +256,10 @@ */ if (!cups_raster_read_header(r)) + { + memset(h, 0, sizeof(cups_page_header_t)); return (0); + } /* * Copy the header to the user-supplied buffer... @@ -285,7 +288,10 @@ */ if (!cups_raster_read_header(r)) + { + memset(h, 0, sizeof(cups_page_header2_t)); return (0); + } /* * Copy the header to the user-supplied buffer... @@ -964,7 +970,7 @@ cups_raster_update(r); - return (r->header.cupsBytesPerLine != 0 && r->header.cupsHeight != 0); + return (r->header.cupsBytesPerLine != 0 && r->header.cupsHeight != 0 && (r->header.cupsBytesPerLine % r->bpp) == 0); }