diff options
author | rsc <devnull@localhost> | 2006-06-25 18:59:29 +0000 |
---|---|---|
committer | rsc <devnull@localhost> | 2006-06-25 18:59:29 +0000 |
commit | 74dc60da74c62e07f0d63179da9724d705794a6d (patch) | |
tree | bfb0bcf94115ebc5b142c3ad4d80157288ee8368 /src/libdraw/md-cload.c | |
parent | 324891a5579d6f504201a6107369c64dab245a98 (diff) | |
download | plan9port-74dc60da74c62e07f0d63179da9724d705794a6d.tar.gz plan9port-74dc60da74c62e07f0d63179da9724d705794a6d.tar.bz2 plan9port-74dc60da74c62e07f0d63179da9724d705794a6d.zip |
bye
Diffstat (limited to 'src/libdraw/md-cload.c')
-rw-r--r-- | src/libdraw/md-cload.c | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/src/libdraw/md-cload.c b/src/libdraw/md-cload.c deleted file mode 100644 index 472caa6b..00000000 --- a/src/libdraw/md-cload.c +++ /dev/null @@ -1,68 +0,0 @@ -#include <u.h> -#include <libc.h> -#include <draw.h> -#include <memdraw.h> - -int -_cloadmemimage(Memimage *i, Rectangle r, uchar *data, int ndata) -{ - int y, bpl, c, cnt, offs; - uchar mem[NMEM], *memp, *omemp, *emem, *linep, *elinep, *u, *eu; - - if(!rectinrect(r, i->r)) - return -1; - bpl = bytesperline(r, i->depth); - u = data; - eu = data+ndata; - memp = mem; - emem = mem+NMEM; - y = r.min.y; - linep = byteaddr(i, Pt(r.min.x, y)); - elinep = linep+bpl; - for(;;){ - if(linep == elinep){ - if(++y == r.max.y) - break; - linep = byteaddr(i, Pt(r.min.x, y)); - elinep = linep+bpl; - } - if(u == eu){ /* buffer too small */ - return -1; - } - c = *u++; - if(c >= 128){ - for(cnt=c-128+1; cnt!=0 ;--cnt){ - if(u == eu){ /* buffer too small */ - return -1; - } - if(linep == elinep){ /* phase error */ - return -1; - } - *linep++ = *u; - *memp++ = *u++; - if(memp == emem) - memp = mem; - } - } - else{ - if(u == eu) /* short buffer */ - return -1; - offs = *u++ + ((c&3)<<8)+1; - if(memp-mem < offs) - omemp = memp+(NMEM-offs); - else - omemp = memp-offs; - for(cnt=(c>>2)+NMATCH; cnt!=0; --cnt){ - if(linep == elinep) /* phase error */ - return -1; - *linep++ = *omemp; - *memp++ = *omemp++; - if(omemp == emem) - omemp = mem; - if(memp == emem) - memp = mem; - } - } - } - return u-data; -} |