X-Git-Url: http://www.wagner.pp.ru/gitweb/?a=blobdiff_plain;f=src%2Fole.c;h=d1c731ddf8a309127428d168096e1ec38c1fba7f;hb=7de410970cd2916482178d730b64aef013b0567a;hp=9931b579cea2fc7a48cc4e536c316d519347f80a;hpb=556e2a24c66cb05296297c7937b3590b228cccf4;p=oss%2Fcatdoc.git diff --git a/src/ole.c b/src/ole.c index 9931b57..d1c731d 100644 --- a/src/ole.c +++ b/src/ole.c @@ -37,7 +37,7 @@ long propCurNumber, propLen, propNumber, propStart; unsigned char *properties=NULL; long int fileLength=0; -static unsigned char ole_sign[]={0xD0,0xCF,0x11,0xE0,0xA1,0xB1,0x1A,0xE1,0}; +static char ole_sign[]={0xD0,0xCF,0x11,0xE0,0xA1,0xB1,0x1A,0xE1,0}; /** @@ -97,7 +97,7 @@ FILE* ole_init(FILE *f, void *buffer, size_t bufSize) { if ( ret != BBD_BLOCK_SIZE ) { return NULL; } - if (strncmp(oleBuf,ole_sign,8) != 0) { + if (strncmp((char *)&oleBuf,ole_sign,8) != 0) { return NULL; } sectorSize = 1<startBlock <= fileLength/(e->isBigBlock ? sectorSize : shortSectorSize))) { if((e->blocks=malloc(chainMaxLen*sizeof(long int))) == NULL ) { + free(e); return NULL; } while(1) {