Added support for storing 64 bit numbers

git-svn-id: https://svn.code.sf.net/p/flaim/code/trunk@805 0109f412-320b-0410-ab79-c3e0c5ffbbe6
This commit is contained in:
dsandersoremutah
2006-09-01 16:34:15 +00:00
parent 8350b37976
commit 24346739dd
27 changed files with 4376 additions and 1568 deletions

View File

@@ -402,6 +402,7 @@ eCorruptionType flmVerifyTextField(
Desc: This routine verifies a number field.
****************************************************************************/
eCorruptionType flmVerifyNumberField(
STATE_INFO * pStateInfo,
FLMBYTE * pNumber,
FLMUINT uiNumberLen)
{
@@ -517,11 +518,23 @@ eCorruptionType flmVerifyNumberField(
return (FLM_BAD_NUMBER_FIELD);
}
// Numbers greater than 11 digits not yet supported.
if (!bRealNumberFlag && (uiNibbleCount > 11))
if (pStateInfo->uiVersionNum >= FLM_FILE_FORMAT_VER_4_62)
{
return (FLM_BAD_NUMBER_FIELD);
// Numbers greater than 21 digits not yet supported.
if (!bRealNumberFlag && (uiNibbleCount > 21))
{
return (FLM_BAD_NUMBER_FIELD);
}
}
else
{
// Numbers greater than 11 digits not yet supported.
if (!bRealNumberFlag && (uiNibbleCount > 11))
{
return (FLM_BAD_NUMBER_FIELD);
}
}
}
}
@@ -666,9 +679,10 @@ FSTATIC eCorruptionType flmVerifyBlobField(
Desc:
****************************************************************************/
eCorruptionType flmVerifyField(
FLMBYTE* pField,
FLMUINT uiFieldLen,
FLMUINT uiFieldType)
STATE_INFO * pStateInfo,
FLMBYTE* pField,
FLMUINT uiFieldLen,
FLMUINT uiFieldType)
{
if (((uiFieldLen) && (!pField)) || ((!uiFieldLen) && (pField)))
{
@@ -684,7 +698,7 @@ eCorruptionType flmVerifyField(
case FLM_NUMBER_TYPE:
{
return (flmVerifyNumberField( pField, uiFieldLen));
return (flmVerifyNumberField( pStateInfo, pField, uiFieldLen));
}
case FLM_BINARY_TYPE: