diff options
| author | Guillaume Gomez <guillaume.gomez@huawei.com> | 2022-06-20 23:31:40 +0200 |
|---|---|---|
| committer | Guillaume Gomez <guillaume.gomez@huawei.com> | 2022-06-20 23:39:26 +0200 |
| commit | beb2f364cc85b4408da1d043f875d159003558e4 (patch) | |
| tree | 8da8322708b4be76db453800a02bd259d811fa2f /compiler/rustc_metadata/src | |
| parent | 987c73158e2120ef75b4b7fc46dcd88a621106d8 (diff) | |
Fix panic by checking if `CStore` has the crate data we want before actually querying it
Diffstat (limited to 'compiler/rustc_metadata/src')
| -rw-r--r-- | compiler/rustc_metadata/src/creader.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/rustc_metadata/src/creader.rs b/compiler/rustc_metadata/src/creader.rs index 947d563ae3c..555db5846ed 100644 --- a/compiler/rustc_metadata/src/creader.rs +++ b/compiler/rustc_metadata/src/creader.rs @@ -133,6 +133,10 @@ impl CStore { CrateNum::new(self.metas.len() - 1) } + pub fn has_crate_data(&self, cnum: CrateNum) -> bool { + self.metas[cnum].is_some() + } + pub(crate) fn get_crate_data(&self, cnum: CrateNum) -> CrateMetadataRef<'_> { let cdata = self.metas[cnum] .as_ref() |
