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