@@ -1007,14 +1007,11 @@ static void
10071007compute_column_offsets (guint32 bitfield , guint8 column_offsets [MONO_TABLE_INFO_MAX_COLUMNS ])
10081008{
10091009 int offset = 0 , c = mono_metadata_table_count (bitfield );
1010- for (int i = 0 ; i < MONO_TABLE_INFO_MAX_COLUMNS ; i ++ ) {
1011- if (i >= c ) {
1012- column_offsets [i ] = 0xFFu ;
1013- } else {
1014- int size = mono_metadata_table_size (bitfield , i );
1015- column_offsets [i ] = (guint8 )offset ;
1016- offset += size ;
1017- }
1010+ memset (column_offsets , 0 , MONO_TABLE_INFO_MAX_COLUMNS );
1011+ for (int i = 0 ; i < c ; i ++ ) {
1012+ int size = mono_metadata_table_size (bitfield , i );
1013+ column_offsets [i ] = (guint8 )offset ;
1014+ offset += size ;
10181015 }
10191016}
10201017
@@ -1488,16 +1485,10 @@ mono_metadata_decode_row_col_raw (const MonoTableInfo *t, int idx, guint col)
14881485 int n ;
14891486 guint8 column_offset ;
14901487
1491- guint32 bitfield = t -> size_bitfield ;
1492-
14931488 g_assert (GINT_TO_UINT32 (idx ) < table_info_get_rows (t ));
1494- g_assert (col < mono_metadata_table_count (bitfield ));
1495- data = t -> base + idx * t -> row_size ;
1496-
1497- n = mono_metadata_table_size (bitfield , col );
1498- column_offset = t -> column_offsets [col ];
1499- g_assert (column_offset < 0xFFu );
1500- data += column_offset ;
1489+ g_assert (col < mono_metadata_table_count (t -> size_bitfield ));
1490+ data = t -> base + idx * t -> row_size + t -> column_offsets [col ];
1491+ n = mono_metadata_table_size (t -> size_bitfield , col );
15011492 switch (n ) {
15021493 case 1 :
15031494 return * data ;
0 commit comments