FTK changes. Optimized Solaris file extend operation.

git-svn-id: https://svn.code.sf.net/p/flaim/code/trunk@723 0109f412-320b-0410-ab79-c3e0c5ffbbe6
This commit is contained in:
ahodgkinson
2006-07-27 21:13:17 +00:00
parent 70c4da8400
commit af49935bcb

View File

@@ -718,12 +718,22 @@ RCODE F_FileHdl::lowLevelWrite(
FLMUINT uiCurrBytesToExtend;
FLMUINT uiExtendBufferSize;
uiExtendBufferSize = f_min( uiTotalBytesToExtend, 64 * 1024);
uiExtendBufferSize = f_min( uiTotalBytesToExtend, 1024 * 1024);
if( RC_BAD( rc = f_allocAlignedBuffer(
uiExtendBufferSize, &pucExtendBuffer)))
for( ;;)
{
goto Exit;
if( RC_OK( rc = f_allocAlignedBuffer(
uiExtendBufferSize, &pucExtendBuffer)))
{
break;
}
if( uiExtendBufferSize <= (32 * 1024))
{
goto Exit;
}
uiExtendBufferSize >>= 1;
}
if( ftruncate( m_fd, ui64CurrFileSize + uiTotalBytesToExtend) == -1)