[pshinter] Use unsigned indices.

This reduces casting and eliminates some checks.

* src/pshinter/pshrec.c (ps_mask_test_bit, ps_mask_table_merge,
ps_dimension_add_t1stem, ps_hints_t1stem3): Updated.
(ps_dimension_add_counter): Updated, unnecessary checks removed.
This commit is contained in:
Alexei Podtelezhnikov 2022-02-09 15:04:58 +00:00
parent ed0e2e76d8
commit 0447df71e7
1 changed files with 20 additions and 32 deletions

View File

@ -150,9 +150,9 @@
/* test a bit value in a given mask */
static FT_Int
ps_mask_test_bit( PS_Mask mask,
FT_Int idx )
FT_UInt idx )
{
if ( (FT_UInt)idx >= mask->num_bits )
if ( idx >= mask->num_bits )
return 0;
return mask->bytes[idx >> 3] & ( 0x80 >> ( idx & 7 ) );
@ -406,7 +406,7 @@
PS_Mask mask2 = table->masks + index2;
FT_UInt count1 = mask1->num_bits;
FT_UInt count2 = mask2->num_bits;
FT_Int delta;
FT_UInt delta;
if ( count2 > 0 )
@ -446,7 +446,7 @@
mask2->end_point = 0;
/* number of masks to move */
delta = (FT_Int)( table->num_masks - 1 - index2 );
delta = table->num_masks - 1 - index2;
if ( delta > 0 )
{
/* move to end of table for reuse */
@ -455,7 +455,7 @@
ft_memmove( mask2,
mask2 + 1,
(FT_UInt)delta * sizeof ( PS_MaskRec ) );
delta * sizeof ( PS_MaskRec ) );
mask2[delta] = dummy;
}
@ -626,7 +626,7 @@
FT_Int pos,
FT_Int len,
FT_Memory memory,
FT_Int *aindex )
FT_UInt *aindex )
{
FT_Error error = FT_Err_Ok;
FT_UInt flags = 0;
@ -644,9 +644,6 @@
len = 0;
}
if ( aindex )
*aindex = -1;
/* now, lookup stem in the current hints table */
{
PS_Mask mask;
@ -683,7 +680,7 @@
goto Exit;
if ( aindex )
*aindex = (FT_Int)idx;
*aindex = idx;
}
Exit:
@ -694,9 +691,9 @@
/* add a "hstem3/vstem3" counter to our dimension table */
static FT_Error
ps_dimension_add_counter( PS_Dimension dim,
FT_Int hint1,
FT_Int hint2,
FT_Int hint3,
FT_UInt hint1,
FT_UInt hint2,
FT_UInt hint3,
FT_Memory memory )
{
FT_Error error = FT_Err_Ok;
@ -723,26 +720,17 @@
}
/* now, set the bits for our hints in the counter mask */
if ( hint1 >= 0 )
{
error = ps_mask_set_bit( counter, (FT_UInt)hint1, memory );
if ( error )
goto Exit;
}
error = ps_mask_set_bit( counter, hint1, memory );
if ( error )
goto Exit;
if ( hint2 >= 0 )
{
error = ps_mask_set_bit( counter, (FT_UInt)hint2, memory );
if ( error )
goto Exit;
}
error = ps_mask_set_bit( counter, hint2, memory );
if ( error )
goto Exit;
if ( hint3 >= 0 )
{
error = ps_mask_set_bit( counter, (FT_UInt)hint3, memory );
if ( error )
goto Exit;
}
error = ps_mask_set_bit( counter, hint3, memory );
if ( error )
goto Exit;
Exit:
return error;
@ -871,7 +859,7 @@
PS_Dimension dim;
FT_Memory memory = hints->memory;
FT_Int count;
FT_Int idx[3];
FT_UInt idx[3];
/* limit "dimension" to 0..1 */