亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? inflate.c

?? zip壓縮
?? C
?? 第 1 頁(yè) / 共 4 頁(yè)
字號(hào):
            windowBits = 15;        else if (windowBits < 8)            windowBits = 8;        G.dstrm.zalloc = (alloc_func)Z_NULL;        G.dstrm.zfree = (free_func)Z_NULL;        Trace((stderr, "initializing inflate()\n"));        err = inflateInit2(&G.dstrm, -windowBits);        if (err == Z_MEM_ERROR)            return 3;        else if (err != Z_OK)            Trace((stderr, "oops!  (inflateInit2() err = %d)\n", err));        G.inflInit = 1;    }#ifdef FUNZIP    while (err != Z_STREAM_END) {#else /* !FUNZIP */    while (G.csize > 0) {        Trace((stderr, "first loop:  G.csize = %ld\n", G.csize));#endif /* ?FUNZIP */        while (G.dstrm.avail_out > 0) {            err = inflate(&G.dstrm, Z_PARTIAL_FLUSH);            if (err == Z_DATA_ERROR) {                retval = 2; goto uzinflate_cleanup_exit;            } else if (err == Z_MEM_ERROR) {                retval = 3; goto uzinflate_cleanup_exit;            } else if (err != Z_OK && err != Z_STREAM_END)                Trace((stderr, "oops!  (inflate(first loop) err = %d)\n", err));#ifdef FUNZIP            if (err == Z_STREAM_END)    /* "END-of-entry-condition" ? */#else /* !FUNZIP */            if (G.csize <= 0L)          /* "END-of-entry-condition" ? */#endif /* ?FUNZIP */                break;            if (G.dstrm.avail_in <= 0) {                if (fillinbuf(__G) == 0) {                    /* no "END-condition" yet, but no more data */                    retval = 2; goto uzinflate_cleanup_exit;                }                G.dstrm.next_in = G.inptr;                G.dstrm.avail_in = G.incnt;            }            Trace((stderr, "     avail_in = %d\n", G.dstrm.avail_in));        }        /* flush slide[] */        if ((retval = FLUSH(wsize - G.dstrm.avail_out)) != 0)            goto uzinflate_cleanup_exit;        Trace((stderr, "inside loop:  flushing %ld bytes (ptr diff = %ld)\n",          (long)(wsize - G.dstrm.avail_out),          (long)(G.dstrm.next_out-(Bytef *)redirSlide)));        G.dstrm.next_out = redirSlide;        G.dstrm.avail_out = wsize;    }    /* no more input, so loop until we have all output */    Trace((stderr, "beginning final loop:  err = %d\n", err));    while (err != Z_STREAM_END) {        err = inflate(&G.dstrm, Z_PARTIAL_FLUSH);        if (err == Z_DATA_ERROR) {            retval = 2; goto uzinflate_cleanup_exit;        } else if (err == Z_MEM_ERROR) {            retval = 3; goto uzinflate_cleanup_exit;        } else if (err == Z_BUF_ERROR) {                /* DEBUG */            Trace((stderr,                   "zlib inflate() did not detect stream end (%s, %s)\n",                   G.zipfn, G.filename));            break;        } else if (err != Z_OK && err != Z_STREAM_END) {            Trace((stderr, "oops!  (inflate(final loop) err = %d)\n", err));            DESTROYGLOBALS();            EXIT(PK_MEM3);        }        /* final flush of slide[] */        if ((retval = FLUSH(wsize - G.dstrm.avail_out)) != 0)            goto uzinflate_cleanup_exit;        Trace((stderr, "final loop:  flushing %ld bytes (ptr diff = %ld)\n",          (long)(wsize - G.dstrm.avail_out),          (long)(G.dstrm.next_out-(Bytef *)redirSlide)));        G.dstrm.next_out = redirSlide;        G.dstrm.avail_out = wsize;    }    Trace((stderr, "total in = %ld, total out = %ld\n", G.dstrm.total_in,      G.dstrm.total_out));    G.inptr = (uch *)G.dstrm.next_in;    G.incnt = (G.inbuf + INBUFSIZ) - G.inptr;  /* reset for other routines */uzinflate_cleanup_exit:    err = inflateReset(&G.dstrm);    if (err != Z_OK)        Trace((stderr, "oops!  (inflateReset() err = %d)\n", err));    return retval;}/*---------------------------------------------------------------------------*/#else /* !USE_ZLIB *//* Function prototypes */#ifndef OF#  ifdef __STDC__#    define OF(a) a#  else#    define OF(a) ()#  endif#endif /* !OF */int inflate_codes OF((__GPRO__ struct huft *tl, struct huft *td,                      int bl, int bd));static int inflate_stored OF((__GPRO));static int inflate_fixed OF((__GPRO));static int inflate_dynamic OF((__GPRO));static int inflate_block OF((__GPRO__ int *e));/* The inflate algorithm uses a sliding 32K byte window on the uncompressed   stream to find repeated byte strings.  This is implemented here as a   circular buffer.  The index is updated simply by incrementing and then   and'ing with 0x7fff (32K-1). *//* It is left to other modules to supply the 32K area.  It is assumed   to be usable as if it were declared "uch slide[32768];" or as just   "uch *slide;" and then malloc'ed in the latter case.  The definition   must be in unzip.h, included above. *//* unsigned wp;  moved to globals.h */     /* current position in slide *//* Tables for deflate from PKZIP's appnote.txt. *//* - Order of the bit length code lengths */static ZCONST unsigned border[] = {        16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15};/* - Copy lengths for literal codes 257..285 */#ifdef USE_DEFLATE64static ZCONST ush cplens64[] = {        3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,        35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 3, 0, 0};        /* For Deflate64, the code 285 is defined differently. */#else#  define cplens32 cplens#endifstatic ZCONST ush cplens32[] = {        3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,        35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0};        /* note: see note #13 above about the 258 in this list. *//* - Extra bits for literal codes 257..285 */#ifdef USE_DEFLATE64static ZCONST uch cplext64[] = {        0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2,        3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 16, INVALID_CODE, INVALID_CODE};#else#  define cplext32 cplext#endifstatic ZCONST uch cplext32[] = {        0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2,        3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, INVALID_CODE, INVALID_CODE};/* - Copy offsets for distance codes 0..29 (0..31 for Deflate64) */static ZCONST ush cpdist[] = {        1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,        257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,#if (defined(USE_DEFLATE64) || defined(PKZIP_BUG_WORKAROUND))        8193, 12289, 16385, 24577, 32769, 49153};#else        8193, 12289, 16385, 24577};#endif/* - Extra bits for distance codes 0..29 (0..31 for Deflate64) */#ifdef USE_DEFLATE64static ZCONST uch cpdext64[] = {        0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6,        7, 7, 8, 8, 9, 9, 10, 10, 11, 11,        12, 12, 13, 13, 14, 14};#else#  define cpdext32 cpdext#endifstatic ZCONST uch cpdext32[] = {        0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6,        7, 7, 8, 8, 9, 9, 10, 10, 11, 11,#ifdef PKZIP_BUG_WORKAROUND        12, 12, 13, 13, INVALID_CODE, INVALID_CODE};#else        12, 12, 13, 13};#endif#ifdef PKZIP_BUG_WORKAROUND#  define MAXLITLENS 288#else#  define MAXLITLENS 286#endif#if (defined(USE_DEFLATE64) || defined(PKZIP_BUG_WORKAROUND))#  define MAXDISTS 32#else#  define MAXDISTS 30#endif/* moved to consts.h (included in unzip.c), resp. funzip.c */#if 0/* And'ing with mask_bits[n] masks the lower n bits */ZCONST ush near mask_bits[] = {    0x0000,    0x0001, 0x0003, 0x0007, 0x000f, 0x001f, 0x003f, 0x007f, 0x00ff,    0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff};#endif /* 0 *//* Macros for inflate() bit peeking and grabbing.   The usage is:        NEEDBITS(j)        x = b & mask_bits[j];        DUMPBITS(j)   where NEEDBITS makes sure that b has at least j bits in it, and   DUMPBITS removes the bits from b.  The macros use the variable k   for the number of bits in b.  Normally, b and k are register   variables for speed and are initialized at the begining of a   routine that uses these macros from a global bit buffer and count.   In order to not ask for more bits than there are in the compressed   stream, the Huffman tables are constructed to only ask for just   enough bits to make up the end-of-block code (value 256).  Then no   bytes need to be "returned" to the buffer at the end of the last   block.  See the huft_build() routine. *//* These have been moved to globals.h */#if 0ulg bb;                         /* bit buffer */unsigned bk;                    /* bits in bit buffer */#endif#ifndef CHECK_EOF#  define CHECK_EOF   /* default as of 5.13/5.2 */#endif#ifndef CHECK_EOF#  define NEEDBITS(n) {while(k<(n)){b|=((ulg)NEXTBYTE)<<k;k+=8;}}#else#  define NEEDBITS(n) {while(k<(n)){int c=NEXTBYTE;\    if(c==EOF){retval=1;goto cleanup_and_exit;}\    b|=((ulg)c)<<k;k+=8;}}#endif#define DUMPBITS(n) {b>>=(n);k-=(n);}/*   Huffman code decoding is performed using a multi-level table lookup.   The fastest way to decode is to simply build a lookup table whose   size is determined by the longest code.  However, the time it takes   to build this table can also be a factor if the data being decoded   are not very long.  The most common codes are necessarily the   shortest codes, so those codes dominate the decoding time, and hence   the speed.  The idea is you can have a shorter table that decodes the   shorter, more probable codes, and then point to subsidiary tables for   the longer codes.  The time it costs to decode the longer codes is   then traded against the time it takes to make longer tables.   This results of this trade are in the variables lbits and dbits   below.  lbits is the number of bits the first level table for literal/   length codes can decode in one step, and dbits is the same thing for   the distance codes.  Subsequent tables are also less than or equal to   those sizes.  These values may be adjusted either when all of the   codes are shorter than that, in which case the longest code length in   bits is used, or when the shortest code is *longer* than the requested   table size, in which case the length of the shortest code in bits is   used.   There are two different values for the two tables, since they code a   different number of possibilities each.  The literal/length table   codes 286 possible values, or in a flat code, a little over eight   bits.  The distance table codes 30 possible values, or a little less   than five bits, flat.  The optimum values for speed end up being   about one bit more than those, so lbits is 8+1 and dbits is 5+1.   The optimum values may differ though from machine to machine, and   possibly even between compilers.  Your mileage may vary. */static ZCONST int lbits = 9;    /* bits in base literal/length lookup table */static ZCONST int dbits = 6;    /* bits in base distance lookup table */#ifndef ASM_INFLATECODESint inflate_codes(__G__ tl, td, bl, bd)     __GDEFstruct huft *tl, *td;   /* literal/length and distance decoder tables */int bl, bd;             /* number of bits decoded by tl[] and td[] *//* inflate (decompress) the codes in a deflated (compressed) block.   Return an error code or zero if it all goes ok. */{  register unsigned e;  /* table entry flag/number of extra bits */  unsigned d;           /* index for copy */  UINT_D64 n;           /* length for copy (deflate64: might be 64k+2) */  UINT_D64 w;           /* current window position (deflate64: up to 64k) */  struct huft *t;       /* pointer to table entry */  unsigned ml, md;      /* masks for bl and bd bits */  register ulg b;       /* bit buffer */  register unsigned k;  /* number of bits in bit buffer */  int retval = 0;       /* error code returned: initialized to "no error" */  /* make local copies of globals */  b = G.bb;                       /* initialize bit buffer */  k = G.bk;  w = G.wp;                       /* initialize window position */  /* inflate the coded data */  ml = mask_bits[bl];           /* precompute masks for speed */  md = mask_bits[bd];  while (1)                     /* do until end of block */  {    NEEDBITS((unsigned)bl)    t = tl + ((unsigned)b & ml);    while (1) {      DUMPBITS(t->b)      if ((e = t->e) == 32)     /* then it's a literal */      {        redirSlide[w++] = (uch)t->v.n;        if (w == wsize)        {          if ((retval = FLUSH(w)) != 0) goto cleanup_and_exit;          w = 0;        }        break;      }      if (e < 31)               /* then it's a length */      {        /* get length of block to copy */        NEEDBITS(e)        n = t->v.n + ((unsigned)b & mask_bits[e]);        DUMPBITS(e)        /* decode distance of block to copy */        NEEDBITS((unsigned)bd)        t = td + ((unsigned)b & md);        while (1) {          DUMPBITS(t->b)          if ((e = t->e) < 32)            break;          if (IS_INVALID_CODE(e))            return 1;          e &= 31;          NEEDBITS(e)          t = t->v.t + ((unsigned)b & mask_bits[e]);        }        NEEDBITS(e)        d = (unsigned)w - t->v.n - ((unsigned)b & mask_bits[e]);        DUMPBITS(e)        /* do the copy */        do {#if (defined(DLL) && !defined(NO_SLIDE_REDIR))          if (G.redirect_slide) {            /* &= w/ wsize unnecessary & wrong if redirect */            if ((UINT_D64)d >= wsize)              return 1;         /* invalid compressed data */            e = (unsigned)(wsize - (d > (unsigned)w ? (UINT_D64)d : w));          }          else

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产精品久久久久秋霞影院| 久久免费国产精品| 亚洲午夜视频在线| 欧美性一区二区| 日韩专区欧美专区| 日韩美女一区二区三区| 国产高清无密码一区二区三区| 中文字幕第一区二区| 成人av先锋影音| 亚洲精品乱码久久久久久日本蜜臀| 欧美视频中文一区二区三区在线观看| 亚洲成a人v欧美综合天堂下载| 在线综合视频播放| 国产在线播放一区二区三区| 中文字幕亚洲欧美在线不卡| 欧美性生交片4| 麻豆高清免费国产一区| 欧美国产乱子伦| 91国偷自产一区二区三区观看| 日韩 欧美一区二区三区| 久久久久久一二三区| 色丁香久综合在线久综合在线观看| 亚洲高清视频的网址| 日韩精品一区二区在线| 成人黄色软件下载| 日本特黄久久久高潮| 国产区在线观看成人精品| 91猫先生在线| 激情综合色丁香一区二区| 中文字幕乱码一区二区免费| 欧美午夜一区二区三区| 国产精品自拍在线| 日韩中文字幕麻豆| 国产精品成人网| 精品国产一区二区三区忘忧草| 成人激情图片网| 风间由美一区二区av101| 亚洲午夜激情网站| 久久精品欧美一区二区三区不卡| 欧美日韩在线综合| 成人性色生活片| 久久不见久久见免费视频7| 一区二区三区日韩欧美精品 | 青草av.久久免费一区| 国产丝袜欧美中文另类| 欧美精品第一页| 91在线一区二区三区| 精品一区二区三区欧美| 五月天激情综合| 一区二区三区精密机械公司| 国产日韩欧美综合一区| 日韩女同互慰一区二区| 欧美日韩一卡二卡| 在线观看亚洲a| 色综合久久天天综合网| 国产盗摄精品一区二区三区在线| 免费亚洲电影在线| 亚洲成人午夜影院| 亚洲午夜精品网| 亚洲精品免费一二三区| 日韩美女视频一区| 成人欧美一区二区三区白人 | 欧美韩国日本不卡| 久久尤物电影视频在线观看| 555夜色666亚洲国产免| 欧美日韩一区二区欧美激情| 91久久精品一区二区三| 99国产精品久久久| 91视频观看视频| 99re热视频精品| 91网站最新地址| aaa国产一区| 一本色道亚洲精品aⅴ| a4yy欧美一区二区三区| 91污片在线观看| 色婷婷精品大在线视频 | 久久er精品视频| 免费久久99精品国产| 日韩av一级电影| 美女高潮久久久| 国产乱码精品一区二区三区忘忧草 | gogo大胆日本视频一区| 成人av电影免费在线播放| 懂色中文一区二区在线播放| 丁香五精品蜜臀久久久久99网站| 高清不卡一区二区在线| 欧美综合一区二区三区| 欧洲精品一区二区三区在线观看| 欧美又粗又大又爽| 欧美精品日韩综合在线| 欧美不卡123| 国产欧美日本一区视频| 亚洲精品久久久蜜桃| 亚洲一区二区偷拍精品| 日韩高清不卡在线| 久久99国产精品尤物| 国产91精品一区二区麻豆亚洲| www.欧美日韩| 欧美日韩电影一区| 精品国产一区二区三区久久影院| 久久精品亚洲精品国产欧美| 亚洲色图欧美偷拍| 日韩成人免费看| 国产福利91精品一区二区三区| 99re这里都是精品| 欧美日韩第一区日日骚| 国产亚洲欧美色| 一区二区三区日韩精品| 蜜桃av噜噜一区二区三区小说| 成人av第一页| 91精品久久久久久久91蜜桃| 久久精品亚洲麻豆av一区二区 | 亚洲大片在线观看| 国产麻豆成人精品| 欧美唯美清纯偷拍| 久久毛片高清国产| 亚洲一区成人在线| 国产成人精品影院| 欧美日韩国产综合视频在线观看 | 欧美一区二区三区视频在线| 久久久久久久久久久久久女国产乱| 亚洲欧美综合网| 久久精品99国产精品日本| 色香蕉久久蜜桃| 99精品黄色片免费大全| 精品日韩一区二区| 亚洲午夜在线视频| 懂色中文一区二区在线播放| 日韩一区二区影院| 樱花影视一区二区| 国产91精品免费| 欧美一区二区三区不卡| 亚洲精品欧美在线| 成人精品鲁一区一区二区| 3d成人h动漫网站入口| 亚洲日本护士毛茸茸| 国产麻豆精品在线| 日韩一区二区视频在线观看| 亚洲精品菠萝久久久久久久| 国产成人综合在线观看| 欧美一区二区三区视频免费| 亚洲乱码日产精品bd| 国产福利精品导航| 精品久久五月天| 欧美aa在线视频| 欧美视频自拍偷拍| 亚洲免费看黄网站| 不卡一区二区中文字幕| 国产校园另类小说区| 韩国三级在线一区| 日韩精品一区二区三区在线观看 | 亚洲色图丝袜美腿| 从欧美一区二区三区| 久久午夜色播影院免费高清| 日韩不卡手机在线v区| 欧美日韩高清一区| 亚洲一卡二卡三卡四卡无卡久久| 91丨国产丨九色丨pron| 国产精品久久久久久久浪潮网站 | 欧美成人高清电影在线| 蜜臀a∨国产成人精品| 精品视频免费看| 午夜在线成人av| 色婷婷av一区| 亚洲一二三四区| 欧美影院一区二区| 亚洲va欧美va天堂v国产综合| 在线观看视频一区| 一区二区三区不卡在线观看 | 亚洲黄色尤物视频| 99精品视频在线观看免费| 国产精品久久精品日日| aaa亚洲精品| 夜夜嗨av一区二区三区| 欧美视频自拍偷拍| 青青国产91久久久久久| 精品国产一区二区三区不卡| 国产中文字幕精品| 国产欧美精品在线观看| caoporn国产一区二区| 自拍偷拍亚洲欧美日韩| 日本韩国一区二区三区| 亚洲成人av资源| 欧美www视频| 成人丝袜高跟foot| 中文字幕日韩一区| 欧美视频一区在线观看| 热久久国产精品| 久久亚洲捆绑美女| 97久久精品人人澡人人爽| 亚洲mv在线观看| 精品国产乱码久久久久久1区2区 | 欧美午夜电影在线播放| 婷婷开心久久网| 久久久99久久| 91成人免费在线视频| 麻豆极品一区二区三区| 欧美极品xxx| 欧美日韩精品系列| 国产老肥熟一区二区三区|