コード例 #1
0
ファイル: nameprep.c プロジェクト: DennisKehrig/Foxbrowser
int Xcode_nameprepString32( const DWORD *       pdwInputString,
                            int                 iInputSize,
                            DWORD *             pdwOutputString,
                            int *               piOutputSize,
                            DWORD *             pdwProhibitedChar ) 
{
  int return_code;
  DWORD dwTemp[256];
  DWORD dwMapped[256];
  //int iTempSize = 256;
  int iMappedSize = 256;

  memset( dwTemp, 0, sizeof( dwTemp ) );
  memset( dwMapped, 0, sizeof( dwMapped ) );

  *pdwProhibitedChar = 0;

  return_code = Xcode_charmapString( (DWORD*)pdwInputString, iInputSize, dwMapped, &iMappedSize );

  if ( return_code != XCODE_SUCCESS ) {return return_code;}

  return_code = Xcode_normalizeString( dwMapped, iMappedSize, pdwOutputString, piOutputSize );

  if ( return_code != XCODE_SUCCESS ) {return return_code;}

  return_code = Xcode_prohibitString( pdwOutputString, *piOutputSize, pdwProhibitedChar );

  if ( return_code != XCODE_SUCCESS ) {return return_code;}

  return_code = Xcode_bidifilterString( pdwOutputString, *piOutputSize );

  if ( return_code != XCODE_SUCCESS ) {return return_code;}
  
  return XCODE_SUCCESS;
}
コード例 #2
0
ファイル: nameprep.c プロジェクト: karelia/IFUnicodeURL
int Xcode_nameprepString( const UTF16CHAR * puInputString, int iInputSize,
                          DWORD * pdwOutputString, int * piOutputSize,
                          DWORD * pdwProhibitedChar )
{
    int return_code;
    DWORD dwTemp[256];
    DWORD dwMapped[256];
    int iTempSize = 256;
    int iMappedSize = 256;

    memset( dwTemp, 0, sizeof( dwTemp ) );
    memset( dwMapped, 0, sizeof( dwMapped ) );

    *pdwProhibitedChar = 0;

    /* Input character string is UTF16, each character is 16 bits, type UTF16CHAR */

    return_code = Xcode_convertUTF16To32Bit( puInputString, iInputSize, dwTemp, &iTempSize );

    if ( return_code != XCODE_SUCCESS ) {
        return return_code;
    }

    return_code = Xcode_charmapString( dwTemp, iTempSize, dwMapped, &iMappedSize );

    if ( return_code != XCODE_SUCCESS ) {
        return return_code;
    }

    return_code = Xcode_normalizeString( dwMapped, iMappedSize, pdwOutputString, piOutputSize );

    if ( return_code != XCODE_SUCCESS ) {
        return return_code;
    }

    return_code = Xcode_prohibitString( pdwOutputString, *piOutputSize, pdwProhibitedChar );

    if ( return_code != XCODE_SUCCESS ) {
        return return_code;
    }

    return_code = Xcode_bidifilterString( pdwOutputString, *piOutputSize );

    if ( return_code != XCODE_SUCCESS ) {
        return return_code;
    }

    return XCODE_SUCCESS;
}