Example #1
0
static void test_raw(void)
{
  int       i;
  char      raw_data[32];
  size_t    raw_length;
  uint8_t  *encoded_data;
  uint64_t  encoded_length;
  uint8_t  *decoded_data;
  uint64_t  decoded_length;
  uint8_t   expected_data[32];
  uint64_t  expected_length;

  for(i = 0; i < 256; i++)
  {
    raw_length = sprintf(raw_data, "%%%02x \\x%02x %02x", i, i, i);
    encoded_data = encode_raw((uint8_t*)raw_data, raw_length, &encoded_length);
    expected_length = sprintf((char*)expected_data, "%%%02x \\x%02x %02x", i, i, i);
    test_check_memory("encode_raw", expected_data, expected_length, encoded_data, encoded_length);
    free(encoded_data);
  }

  for(i = 0; i < 256; i++)
  {
    raw_length = sprintf(raw_data, "%%%02x \\x%02x %02x", i, i, i);
    decoded_data = decode_raw((uint8_t*)raw_data, raw_length, &decoded_length);
    expected_length = sprintf((char*)expected_data, "%%%02x \\x%02x %02x", i, i, i);
    test_check_memory("decode_raw", expected_data, expected_length, decoded_data, decoded_length);
    free(decoded_data);
  }
}
void
DjVuANT::merge(ByteStream & str)
{
   GLParser parser(encode_raw());
   GUTF8String add_raw=read_raw(str);
   parser.parse(add_raw);
   decode(parser);
}
Example #3
0
/* encodes a string */
EXPORT int encode_string(char *value, void *data, int maxlen)
{
    return encode_raw(value, data, maxlen, strlen(value)+1);
}
void
DjVuANT::encode(ByteStream &bs)
{
  GUTF8String raw=encode_raw();
  bs.writall((const char*) raw, raw.length());
}