diff --git a/src/gallium/frontends/rusticl/mesa/compiler/nir.rs b/src/gallium/frontends/rusticl/mesa/compiler/nir.rs index 5fadf1810c5..ca140ae6f27 100644 --- a/src/gallium/frontends/rusticl/mesa/compiler/nir.rs +++ b/src/gallium/frontends/rusticl/mesa/compiler/nir.rs @@ -440,7 +440,12 @@ impl NirShader { pub fn get_constant_buffer(&self) -> &[u8] { unsafe { let nir = self.nir.as_ref(); - slice::from_raw_parts(nir.constant_data.cast(), nir.constant_data_size as usize) + // Sometimes, constant_data can be a null pointer if the size is 0 + if nir.constant_data_size == 0 { + &[] + } else { + slice::from_raw_parts(nir.constant_data.cast(), nir.constant_data_size as usize) + } } }