[metadata] Don't access MonoTableInfo:rows, use table_info_get_rows() (#49738)
authorAleksey Kliger (λgeek) <alklig@microsoft.com>
Tue, 23 Mar 2021 18:39:04 +0000 (14:39 -0400)
committerGitHub <noreply@github.com>
Tue, 23 Mar 2021 18:39:04 +0000 (14:39 -0400)
commitdc5c9099b2c4ebcc74f8f40a5de5c4733ac79bfa
tree60250b289b0f2c644d4d8956e7377aca1b7db33a
parentbc82161670633b6caecdd18a77b01b55dc4bc86a
[metadata] Don't access MonoTableInfo:rows, use table_info_get_rows() (#49738)

Rename the field to `rows_`.

Also updated some bounds checks to use `mono_metadata_table_bounds_check` (which is metadata-update aware) where the subsequent lookups go through the metadata decode functions and should just work with metadata-update.

Added `FIXME: metadata-update` in cases where the table row size is assumed to be
fixed or is used as a sentinel value, or where the decoding may depend on
sorting properties that metadata updates probably won't uphold.
17 files changed:
src/mono/mono/metadata/assembly.c
src/mono/mono/metadata/class-init.c
src/mono/mono/metadata/class.c
src/mono/mono/metadata/coree.c
src/mono/mono/metadata/custom-attrs.c
src/mono/mono/metadata/debug-mono-ppdb.c
src/mono/mono/metadata/icall.c
src/mono/mono/metadata/image.c
src/mono/mono/metadata/loader.c
src/mono/mono/metadata/metadata-internals.h
src/mono/mono/metadata/metadata-update.c
src/mono/mono/metadata/metadata.c
src/mono/mono/metadata/metadata.h
src/mono/mono/metadata/native-library.c
src/mono/mono/metadata/reflection.c
src/mono/mono/mini/aot-compiler.c
src/mono/mono/mini/aot-runtime.c