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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? inflate.c

?? zip壓縮
?? C
?? 第 1 頁 / 共 4 頁
字號:
  /* read in last block bit */  NEEDBITS(1)  *e = (int)b & 1;  DUMPBITS(1)  /* read in block type */  NEEDBITS(2)  t = (unsigned)b & 3;  DUMPBITS(2)  /* restore the global bit buffer */  G.bb = b;  G.bk = k;  /* inflate that block type */  if (t == 2)    return inflate_dynamic(__G);  if (t == 0)    return inflate_stored(__G);  if (t == 1)    return inflate_fixed(__G);  /* bad block type */  retval = 2;cleanup_and_exit:  return retval;}int inflate(__G__ is_defl64)    __GDEF    int is_defl64;/* decompress an inflated entry */{  int e;                /* last block flag */  int r;                /* result code */#ifdef DEBUG  unsigned h = 0;       /* maximum struct huft's malloc'ed */#endif#if (defined(DLL) && !defined(NO_SLIDE_REDIR))  if (G.redirect_slide)    wsize = G.redirect_size, redirSlide = G.redirect_buffer;  else    wsize = WSIZE, redirSlide = slide;   /* how they're #defined if !DLL */#endif  /* initialize window, bit buffer */  G.wp = 0;  G.bk = 0;  G.bb = 0;#ifdef USE_DEFLATE64  if (is_defl64) {    G.cplens = cplens64;    G.cplext = cplext64;    G.cpdext = cpdext64;    G.fixed_tl = G.fixed_tl64;    G.fixed_bl = G.fixed_bl64;    G.fixed_td = G.fixed_td64;    G.fixed_bd = G.fixed_bd64;  } else {    G.cplens = cplens32;    G.cplext = cplext32;    G.cpdext = cpdext32;    G.fixed_tl = G.fixed_tl32;    G.fixed_bl = G.fixed_bl32;    G.fixed_td = G.fixed_td32;    G.fixed_bd = G.fixed_bd32;  }#else /* !USE_DEFLATE64 */  if (is_defl64) {    /* This should not happen unless UnZip is built from object files     * compiled with inconsistent option setting.  Handle this by     * returning with "bad input" error code.     */    Trace((stderr, "\nThis inflate() cannot handle Deflate64!\n"));    return 2;  }#endif /* ?USE_DEFLATE64 */  /* decompress until the last block */  do {#ifdef DEBUG    G.hufts = 0;#endif    if ((r = inflate_block(__G__ &e)) != 0)      return r;#ifdef DEBUG    if (G.hufts > h)      h = G.hufts;#endif  } while (!e);  Trace((stderr, "\n%u bytes in Huffman tables (%u/entry)\n",         h * (unsigned)sizeof(struct huft), (unsigned)sizeof(struct huft)));#ifdef USE_DEFLATE64  if (is_defl64) {    G.fixed_tl64 = G.fixed_tl;    G.fixed_bl64 = G.fixed_bl;    G.fixed_td64 = G.fixed_td;    G.fixed_bd64 = G.fixed_bd;  } else {    G.fixed_tl32 = G.fixed_tl;    G.fixed_bl32 = G.fixed_bl;    G.fixed_td32 = G.fixed_td;    G.fixed_bd32 = G.fixed_bd;  }#endif  /* flush out redirSlide and return (success, unless final FLUSH failed) */  return (FLUSH(G.wp));}int inflate_free(__G)    __GDEF{  if (G.fixed_tl != (struct huft *)NULL)  {    huft_free(G.fixed_td);    huft_free(G.fixed_tl);    G.fixed_td = G.fixed_tl = (struct huft *)NULL;  }  return 0;}#endif /* ?USE_ZLIB *//* * GRR:  moved huft_build() and huft_free() down here; used by explode() *       and fUnZip regardless of whether USE_ZLIB defined or not *//* If BMAX needs to be larger than 16, then h and x[] should be ulg. */#define BMAX 16         /* maximum bit length of any code (16 for explode) */#define N_MAX 288       /* maximum number of codes in any set */int huft_build(__G__ b, n, s, d, e, t, m)  __GDEF  ZCONST unsigned *b;   /* code lengths in bits (all assumed <= BMAX) */  unsigned n;           /* number of codes (assumed <= N_MAX) */  unsigned s;           /* number of simple-valued codes (0..s-1) */  ZCONST ush *d;        /* list of base values for non-simple codes */  ZCONST uch *e;        /* list of extra bits for non-simple codes */  struct huft **t;      /* result: starting table */  int *m;               /* maximum lookup bits, returns actual *//* Given a list of code lengths and a maximum table size, make a set of   tables to decode that set of codes.  Return zero on success, one if   the given code set is incomplete (the tables are still built in this   case), two if the input is invalid (all zero length codes or an   oversubscribed set of lengths), and three if not enough memory.   The code with value 256 is special, and the tables are constructed   so that no bits beyond that code are fetched when that code is   decoded. */{  unsigned a;                   /* counter for codes of length k */  unsigned c[BMAX+1];           /* bit length count table */  unsigned el;                  /* length of EOB code (value 256) */  unsigned f;                   /* i repeats in table every f entries */  int g;                        /* maximum code length */  int h;                        /* table level */  register unsigned i;          /* counter, current code */  register unsigned j;          /* counter */  register int k;               /* number of bits in current code */  int lx[BMAX+1];               /* memory for l[-1..BMAX-1] */  int *l = lx+1;                /* stack of bits per table */  register unsigned *p;         /* pointer into c[], b[], or v[] */  register struct huft *q;      /* points to current table */  struct huft r;                /* table entry for structure assignment */  struct huft *u[BMAX];         /* table stack */  unsigned v[N_MAX];            /* values in order of bit length */  register int w;               /* bits before this table == (l * h) */  unsigned x[BMAX+1];           /* bit offsets, then code stack */  unsigned *xp;                 /* pointer into x */  int y;                        /* number of dummy codes added */  unsigned z;                   /* number of entries in current table */  /* Generate counts for each bit length */  el = n > 256 ? b[256] : BMAX; /* set length of EOB code, if any */  memzero((char *)c, sizeof(c));  p = (unsigned *)b;  i = n;  do {    c[*p]++; p++;               /* assume all entries <= BMAX */  } while (--i);  if (c[0] == n)                /* null input--all zero length codes */  {    *t = (struct huft *)NULL;    *m = 0;    return 0;  }  /* Find minimum and maximum length, bound *m by those */  for (j = 1; j <= BMAX; j++)    if (c[j])      break;  k = j;                        /* minimum code length */  if ((unsigned)*m < j)    *m = j;  for (i = BMAX; i; i--)    if (c[i])      break;  g = i;                        /* maximum code length */  if ((unsigned)*m > i)    *m = i;  /* Adjust last length count to fill out codes, if needed */  for (y = 1 << j; j < i; j++, y <<= 1)    if ((y -= c[j]) < 0)      return 2;                 /* bad input: more codes than bits */  if ((y -= c[i]) < 0)    return 2;  c[i] += y;  /* Generate starting offsets into the value table for each length */  x[1] = j = 0;  p = c + 1;  xp = x + 2;  while (--i) {                 /* note that i == g from above */    *xp++ = (j += *p++);  }  /* Make a table of values in order of bit lengths */  memzero((char *)v, sizeof(v));  p = (unsigned *)b;  i = 0;  do {    if ((j = *p++) != 0)      v[x[j]++] = i;  } while (++i < n);  n = x[g];                     /* set n to length of v */  /* Generate the Huffman codes and for each, make the table entries */  x[0] = i = 0;                 /* first Huffman code is zero */  p = v;                        /* grab values in bit order */  h = -1;                       /* no tables yet--level -1 */  w = l[-1] = 0;                /* no bits decoded yet */  u[0] = (struct huft *)NULL;   /* just to keep compilers happy */  q = (struct huft *)NULL;      /* ditto */  z = 0;                        /* ditto */  /* go through the bit lengths (k already is bits in shortest code) */  for (; k <= g; k++)  {    a = c[k];    while (a--)    {      /* here i is the Huffman code of length k bits for value *p */      /* make tables up to required level */      while (k > w + l[h])      {        w += l[h++];            /* add bits already decoded */        /* compute minimum size table less than or equal to *m bits */        z = (z = g - w) > (unsigned)*m ? *m : z;        /* upper limit */        if ((f = 1 << (j = k - w)) > a + 1)     /* try a k-w bit table */        {                       /* too few codes for k-w bit table */          f -= a + 1;           /* deduct codes from patterns left */          xp = c + k;          while (++j < z)       /* try smaller tables up to z bits */          {            if ((f <<= 1) <= *++xp)              break;            /* enough codes to use up j bits */            f -= *xp;           /* else deduct codes from patterns */          }        }        if ((unsigned)w + j > el && (unsigned)w < el)          j = el - w;           /* make EOB code end at table */        z = 1 << j;             /* table entries for j-bit table */        l[h] = j;               /* set table size in stack */        /* allocate and link in new table */        if ((q = (struct huft *)malloc((z + 1)*sizeof(struct huft))) ==            (struct huft *)NULL)        {          if (h)            huft_free(u[0]);          return 3;             /* not enough memory */        }#ifdef DEBUG        G.hufts += z + 1;         /* track memory usage */#endif        *t = q + 1;             /* link to list for huft_free() */        *(t = &(q->v.t)) = (struct huft *)NULL;        u[h] = ++q;             /* table starts after link */        /* connect to last table, if there is one */        if (h)        {          x[h] = i;             /* save pattern for backing up */          r.b = (uch)l[h-1];    /* bits to dump before this table */          r.e = (uch)(32 + j);  /* bits in this table */          r.v.t = q;            /* pointer to this table */          j = (i & ((1 << w) - 1)) >> (w - l[h-1]);          u[h-1][j] = r;        /* connect to last table */        }      }      /* set up table entry in r */      r.b = (uch)(k - w);      if (p >= v + n)        r.e = INVALID_CODE;     /* out of values--invalid code */      else if (*p < s)      {        r.e = (uch)(*p < 256 ? 32 : 31);  /* 256 is end-of-block code */        r.v.n = (ush)*p++;                /* simple code is just the value */      }      else      {        r.e = e[*p - s];        /* non-simple--look up in lists */        r.v.n = d[*p++ - s];      }      /* fill code-like entries with r */      f = 1 << (k - w);      for (j = i >> w; j < z; j += f)        q[j] = r;      /* backwards increment the k-bit code i */      for (j = 1 << (k - 1); i & j; j >>= 1)        i ^= j;      i ^= j;      /* backup over finished tables */      while ((i & ((1 << w) - 1)) != x[h])        w -= l[--h];            /* don't need to update q */    }  }  /* return actual size of base table */  *m = l[0];  /* Return true (1) if we were given an incomplete table */  return y != 0 && g != 1;}int huft_free(t)struct huft *t;         /* table to free *//* Free the malloc'ed tables built by huft_build(), which makes a linked   list of the tables it made, with the links in a dummy first entry of   each table. */{  register struct huft *p, *q;  /* Go through linked list, freeing from the malloced (t[-1]) address. */  p = t;  while (p != (struct huft *)NULL)  {    q = (--p)->v.t;    free((zvoid *)p);    p = q;  }  return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
伊人开心综合网| 国产麻豆精品久久一二三| 久久9热精品视频| 91丨九色丨黑人外教| 精品剧情v国产在线观看在线| 专区另类欧美日韩| 精品中文字幕一区二区小辣椒| 91丨九色丨尤物| 国产欧美综合在线观看第十页 | 奇米综合一区二区三区精品视频| 国产91富婆露脸刺激对白| 91麻豆精品国产91久久久更新时间| 国产精品你懂的| 国产成人av一区二区三区在线| 欧美精品黑人性xxxx| 亚洲精品第1页| 99国产精品国产精品毛片| 精品免费国产二区三区| 免费成人在线视频观看| 欧美在线免费观看亚洲| 亚洲少妇屁股交4| 91小宝寻花一区二区三区| 国产精品狼人久久影院观看方式| 精品一区二区在线视频| 欧美一级夜夜爽| 日本欧美一区二区| 在线电影院国产精品| 亚洲午夜免费福利视频| 欧美三级日韩三级| 亚洲第一狼人社区| 欧美精品日韩精品| 亚洲成av人片在线| 7777精品伊人久久久大香线蕉最新版| 一区二区三区毛片| 欧美日产在线观看| 日韩av在线免费观看不卡| 欧美一级日韩一级| 另类人妖一区二区av| 精品少妇一区二区| 国产毛片一区二区| 中文字幕成人在线观看| 91色九色蝌蚪| 亚洲va韩国va欧美va精品| 欧美精品在线观看一区二区| 男人的天堂亚洲一区| 337p日本欧洲亚洲大胆精品| 国产老女人精品毛片久久| 久久伊人中文字幕| 丁香六月久久综合狠狠色| 国产精品乱人伦中文| 91视频在线看| 性感美女极品91精品| 正在播放亚洲一区| 国产一区福利在线| 亚洲欧洲成人精品av97| 欧美亚洲动漫制服丝袜| 午夜精品久久久久| 精品国产凹凸成av人导航| 丁香五精品蜜臀久久久久99网站 | 日韩一卡二卡三卡国产欧美| 麻豆免费看一区二区三区| 国产人成亚洲第一网站在线播放| 99麻豆久久久国产精品免费| 日产精品久久久久久久性色| 久久夜色精品一区| 一本色道久久综合亚洲91| 蜜臀av性久久久久蜜臀av麻豆| 久久这里只有精品视频网| 一本色道久久综合亚洲精品按摩| 久久精品国产秦先生| 日韩理论片在线| 日韩欧美黄色影院| 97精品久久久久中文字幕| 免费美女久久99| 国产精品另类一区| 日韩午夜在线播放| 91黄色免费网站| 成人一区二区三区中文字幕| 偷拍日韩校园综合在线| 国产精品国产自产拍高清av| 日韩一本二本av| 欧美亚洲禁片免费| voyeur盗摄精品| 国产一区二区久久| 亚洲.国产.中文慕字在线| 国产日产精品一区| 91精品国产综合久久精品麻豆 | 国产精品欧美一区喷水| 欧美三级欧美一级| 91天堂素人约啪| 国产精品99久久久久久久女警| 天堂久久久久va久久久久| 中文字幕一区二区三区色视频| 欧美一区二区三区日韩视频| 91蜜桃网址入口| 成人av资源下载| 国产在线一区二区综合免费视频| 日韩影院免费视频| 亚洲精品成人在线| 国产精品网站在线观看| 久久久九九九九| 日韩一级视频免费观看在线| 在线不卡免费av| 欧美亚洲一区二区在线| 日本韩国精品在线| av在线播放成人| 成人精品免费网站| 粉嫩13p一区二区三区| 国产成人综合亚洲网站| 精品一区二区在线播放| 久久99久久99小草精品免视看| 日产国产高清一区二区三区| 亚洲一区二区免费视频| 亚洲一区二区精品久久av| 悠悠色在线精品| 一区二区三区国产精华| 亚洲精品成a人| 一区二区三区四区国产精品| 亚洲免费观看高清完整版在线观看熊| 国产精品视频免费| 国产精品久久久久久久第一福利 | 亚洲一二三级电影| 人人狠狠综合久久亚洲| 亚洲一二三专区| 亚洲最新视频在线播放| 亚洲一二三区在线观看| 五月天欧美精品| 免费成人深夜小野草| 欧美日本不卡视频| 国产三区在线成人av| 亚洲国产精品久久久久婷婷884| 国产剧情在线观看一区二区| 欧美日韩精品综合在线| 国产精品欧美一区二区三区| 美女国产一区二区| 欧美性受极品xxxx喷水| 国产精品久久夜| 老司机精品视频导航| 欧美色爱综合网| 亚洲精选视频在线| 国产成人精品免费视频网站| 日韩一级片在线观看| 亚洲午夜电影网| 91一区一区三区| 国产精品高清亚洲| 国产精品一区一区| 精品国产乱码久久| 蜜臀av一区二区在线免费观看| 欧美视频在线观看一区二区| 中文字幕亚洲区| 国产精品一区二区x88av| 欧美v亚洲v综合ⅴ国产v| 五月综合激情网| 欧美午夜一区二区| 一级特黄大欧美久久久| 99视频一区二区三区| 国产精品久久久久毛片软件| 国产精品一区专区| 精品不卡在线视频| 老司机精品视频一区二区三区| 欧美精品一卡二卡| 亚洲高清免费视频| 欧美日韩一区二区在线观看视频| 中文字幕色av一区二区三区| 丁香桃色午夜亚洲一区二区三区 | 日韩你懂的在线播放| 日韩在线一二三区| 这里只有精品电影| 秋霞电影网一区二区| 91麻豆精品国产91久久久久久 | 色婷婷亚洲婷婷| 亚洲欧美色图小说| 欧美色区777第一页| 亚洲成人在线观看视频| 91麻豆精品国产91久久久更新时间| 亚洲成人精品影院| 91精品久久久久久久99蜜桃| 日韩在线卡一卡二| 欧美xfplay| 国产成人精品一区二| 国产精品久久久久aaaa樱花| 97久久超碰国产精品电影| 又紧又大又爽精品一区二区| 91成人在线观看喷潮| 婷婷综合久久一区二区三区| 日韩欧美国产成人一区二区| 久久99九九99精品| 中文字幕成人av| 在线日韩av片| 奇米精品一区二区三区在线观看一| 欧美xxxxxxxxx| av在线不卡免费看| 日韩成人av影视| 久久免费精品国产久精品久久久久| 国产精品一品二品| 亚洲黄色av一区| 精品久久久久久久久久久久久久久久久| 国产在线一区二区综合免费视频| 国产精品毛片久久久久久| 欧美午夜精品免费|