static int nsis_init(struct nsis_st *n) {
  switch(n->comp) {
  case COMP_BZIP2:
    if (nsis_BZ2_bzDecompressInit(&n->bz, 0, 0)!=BZ_OK)
      return CL_EBZIP;
    n->freecomp=1;
    break;
  case COMP_LZMA:
    lzmaInit(&n->lz);
    n->freecomp=1;
    break;
  case COMP_ZLIB:
    nsis_inflateInit(&n->z);
    n->freecomp=0;
  }
  return CL_SUCCESS;
}
Exemple #2
0
static int nsis_init(struct nsis_st *n) {
  switch(n->comp) {
  case COMP_BZIP2:
    memset(&n->bz, 0, sizeof(nsis_bzstream));
    if (nsis_BZ2_bzDecompressInit(&n->bz, 0, 0)!=BZ_OK)
      return CL_EUNPACK;
    n->freecomp=1;
    break;
  case COMP_LZMA:
    memset(&n->lz, 0, sizeof(struct CLI_LZMA));
    if(cli_LzmaInit(&n->lz, 0xffffffffffffffffULL)!=LZMA_RESULT_OK)
      return CL_EUNPACK;
    n->freecomp=1;
    break;
  case COMP_ZLIB:
    memset(&n->z, 0, sizeof(z_stream));
/*     inflateInit2(&n->z, -MAX_WBITS); */
/*     n->freecomp=1; */
    nsis_inflateInit(&n->z);
    n->freecomp=0;
  }
  return CL_SUCCESS;
}