See changelog 2000-08-01 21:20 GMT -3
This commit is contained in:
@@ -39,11 +39,12 @@ HB_FUNC(HB_ZIPFILE)
|
||||
if( ISCHAR(1) && ISCHAR(2)) {
|
||||
int iCompLevel;
|
||||
BOOL iOverWrite;
|
||||
BOOL lExist;
|
||||
char szFile[_POSIX_PATH_MAX];
|
||||
strcpy(szFile,hb_parc(1));
|
||||
lExist =hb_fsFile(hb___CheckFile(szFile));
|
||||
if( ISNUM(3)) {
|
||||
iCompLevel=hb_parni(3);
|
||||
|
||||
}
|
||||
else {
|
||||
iCompLevel= (-1);
|
||||
@@ -54,8 +55,18 @@ HB_FUNC(HB_ZIPFILE)
|
||||
}
|
||||
else {
|
||||
iOverWrite= 1;
|
||||
}
|
||||
if (lExist){
|
||||
PHB_ITEM pArray=hb___GetFilesNamesFromZip(hb___CheckFile(szFile),0);
|
||||
PHB_ITEM pItem = hb_itemPutC(NULL,hb_parc(2));
|
||||
hb_arrayAdd(pArray,pItem);
|
||||
hb_itemRelease(pItem);
|
||||
hb_retl(hb___CompressMultipleFile(hb___CheckFile(szFile),pArray,iCompLevel,hb_param( 4,HB_IT_BLOCK),iOverWrite));
|
||||
hb_itemRelease(pArray);
|
||||
}
|
||||
else {
|
||||
hb_retl(hb___CompressOneFile(hb___CheckFile(szFile),hb_parc(2),iCompLevel,hb_param( 4, HB_IT_BLOCK) ,iOverWrite));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -425,8 +425,8 @@ int hb___GetNumbersofFilestoUnzip(char *szFile)
|
||||
PHB_ITEM hb___GetFilesNamesFromZip(char *szFile,BOOL iMode)
|
||||
{
|
||||
const char *szZipFileName=NULL;
|
||||
char szFilename_Try[512];
|
||||
char szFileNameinZip[256];
|
||||
char szFilename_Try[_POSIX_PATH_MAX];
|
||||
char szFileNameinZip[_POSIX_PATH_MAX];
|
||||
int iNumbersOfFiles;
|
||||
|
||||
PHB_ITEM pItem=NULL;
|
||||
@@ -473,6 +473,7 @@ PHB_ITEM hb___GetFilesNamesFromZip(char *szFile,BOOL iMode)
|
||||
char szTime[8];
|
||||
char *szMethod;
|
||||
char szCRC[8];
|
||||
int iRatio=0;
|
||||
int iLen;
|
||||
int iCount=0;
|
||||
int iiCount=0;
|
||||
@@ -480,6 +481,7 @@ PHB_ITEM hb___GetFilesNamesFromZip(char *szFile,BOOL iMode)
|
||||
pItem=hb_itemPutC(NULL,szFileNameinZip);
|
||||
hb_itemArrayPut(pTempArray,filePos,pItem);
|
||||
hb_itemRelease(pItem);
|
||||
|
||||
if (file_info.uncompressed_size>0) {
|
||||
|
||||
pItem=hb_itemPutNL(NULL,file_info.uncompressed_size);
|
||||
@@ -488,15 +490,30 @@ PHB_ITEM hb___GetFilesNamesFromZip(char *szFile,BOOL iMode)
|
||||
pItem=hb_itemPutNL(NULL,file_info.compressed_size);
|
||||
hb_itemArrayPut(pTempArray,Size,pItem);
|
||||
hb_itemRelease(pItem);
|
||||
|
||||
pItem=hb_itemPutNL(NULL,100-((file_info.compressed_size*100)/file_info.uncompressed_size));
|
||||
iRatio=100-((file_info.compressed_size*100)/file_info.uncompressed_size);
|
||||
if (iRatio <0){
|
||||
iRatio=0;
|
||||
}
|
||||
pItem=hb_itemPutNL(NULL,iRatio);
|
||||
hb_itemArrayPut(pTempArray,Ratio,pItem);
|
||||
hb_itemRelease(pItem);
|
||||
}
|
||||
}
|
||||
else {
|
||||
pItem=hb_itemPutNL(NULL,file_info.uncompressed_size);
|
||||
hb_itemArrayPut(pTempArray,Lenght,pItem);
|
||||
hb_itemRelease(pItem);
|
||||
pItem=hb_itemPutNL(NULL,file_info.compressed_size);
|
||||
hb_itemArrayPut(pTempArray,Size,pItem);
|
||||
hb_itemRelease(pItem);
|
||||
iRatio=0;
|
||||
pItem=hb_itemPutNL(NULL,iRatio);
|
||||
hb_itemArrayPut(pTempArray,Ratio,pItem);
|
||||
hb_itemRelease(pItem);
|
||||
}
|
||||
|
||||
if (file_info.compression_method==0) {
|
||||
szMethod="Stored";
|
||||
}
|
||||
|
||||
if (file_info.compression_method==Z_DEFLATED) {
|
||||
uInt iLevel=(uInt)((file_info.flag & 0x6)/2);
|
||||
if (iLevel==0) {
|
||||
|
||||
@@ -161,7 +161,7 @@ int hb___CompressOneFile(char *szFile,char *szFiletoCompress,int iCompLevel,PHB_
|
||||
if (iZipOk==1)
|
||||
{
|
||||
|
||||
szZipFile = zipOpen(szNewFile,0);
|
||||
szZipFile = zipOpen(szNewFile,1);
|
||||
if (szZipFile == NULL) {
|
||||
err= ZIP_ERRNO;
|
||||
}
|
||||
@@ -197,7 +197,7 @@ int hb___CompressOneFile(char *szFile,char *szFiletoCompress,int iCompLevel,PHB_
|
||||
err=ZIP_ERRNO;
|
||||
|
||||
}
|
||||
|
||||
hb_fsSetDevRaw(nFileHandle);
|
||||
}
|
||||
|
||||
if (err == ZIP_OK)
|
||||
|
||||
@@ -700,7 +700,7 @@ FUNCTION ProcNgiInput()
|
||||
nPos := AT( "()", cName )
|
||||
IF nPos > 0
|
||||
AADD( aFuncs, cName )
|
||||
IF LEFT( cname, 1 ) < "N"
|
||||
IF LEFT( cname, 1 ) < "N" .and. LEFT( cname, 1 ) < "n"
|
||||
AADD( afuncsam, aFiles[ x, 1 ] )
|
||||
ELSE
|
||||
AADD( afuncsn_, aFiles[ x, 1 ] )
|
||||
@@ -817,8 +817,10 @@ FUNCTION ProcNgiInput()
|
||||
.AND. UPPER( LEFT( cFile, AT( '.', cFile ) - 1 ) ) <> "OVERVIEW" ;
|
||||
.AND. UPPER( LEFT( cFile, AT( '.', cFile ) - 1 ) ) <> "COMPILEROPTIONS" ;
|
||||
.AND. UPPER( LEFT( cFile, AT( '.', cFile ) - 1 ) ) <> "GNULICENSE" ;
|
||||
.AND. UPPER( LEFT( cFile, AT( '.', cFile ) - 1 ) ) <> "GNULICENSEPART2"
|
||||
|
||||
.AND. UPPER( LEFT( cFile, AT( '.', cFile ) - 1 ) ) <> "GNULICENSEPART2";
|
||||
.AND. UPPER( LEFT( cFile, AT( '.', cFile ) - 1 ) ) <> "STRONGTYPING";
|
||||
.AND. UPPER( LEFT( cFile, AT( '.', cFile ) - 1 ) ) <> "THEGARBAGECOLLECTOR" ;
|
||||
.AND. UPPER( LEFT( cFile, AT( '.', cFile ) - 1 ) ) <> "THEIDLESTATES"
|
||||
@ INFILELINE, 33 SAY PAD( cfile, 47 )
|
||||
|
||||
FT_FUSE( "ngi\" + acfiles[ x ] )
|
||||
@@ -886,7 +888,7 @@ FUNCTION procngialso2( cSeealso )
|
||||
|
||||
cTemp := SUBSTR( xAlso[ hPos ], 2, 1 )
|
||||
|
||||
IF cTemp >= "A" .AND. cTemp < "_"
|
||||
IF cTemp >= "A" .AND. cTemp < "_" .or. cTemp >= "a" .and. cTemp <= "z"
|
||||
nPos := AT( "()", xAlso[ hPos ] )
|
||||
IF nPos > 0
|
||||
AADD( aAlso, "funcam.ngo:" + ALLTRIM( xAlso[ hPos ] ) + ' ' )
|
||||
|
||||
Reference in New Issue
Block a user