From 9fe5a6216669a8f32c9bb6375b396db88961f7d8 Mon Sep 17 00:00:00 2001 From: rsc Date: Sun, 30 Jan 2005 16:28:21 +0000 Subject: use correct graphics format --- src/cmd/jpg/writepng.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) (limited to 'src/cmd/jpg') diff --git a/src/cmd/jpg/writepng.c b/src/cmd/jpg/writepng.c index 44bfe10c..fb6026d0 100644 --- a/src/cmd/jpg/writepng.c +++ b/src/cmd/jpg/writepng.c @@ -67,7 +67,7 @@ zread(void *va, void *buf, int n) int nrow = z->nrow; int ncol = z->ncol; uchar *b = buf, *e = b+n, *img; - int i, pixels; // number of pixels in row that can be sent now + int pixels; // number of pixels in row that can be sent now while(b+3 <= e){ // loop over image rows if(z->row >= nrow) @@ -79,14 +79,8 @@ zread(void *va, void *buf, int n) pixels = ncol - z->col; img = z->data + z->width * z->row + 3 * z->col; - // Plan 9 image format is BGR?!!! - // memmove(b, img, 3*pixels); - // b += 3*pixels; - for(i=0; icol += pixels; if(z->col >= ncol){ @@ -129,10 +123,13 @@ memRGB(Memimage *i) { Memimage *ni; - if(i->chan == RGB24) + /* + * BGR24 because we want R,G,B in big-endian order. Sigh. + */ + if(i->chan == BGR24) return i; - ni = allocmemimage(i->r, RGB24); + ni = allocmemimage(i->r, BGR24); if(ni == nil) return ni; memimagedraw(ni, ni->r, i, i->r.min, nil, i->r.min, S); -- cgit v1.2.3