egl: differenciate display creation failures
This commit is contained in:
parent
73447bd668
commit
d3a60e03c9
|
@ -97,8 +97,11 @@ impl<B: native::Backend, N: native::NativeDisplay<B>> EGLDisplay<B, N> {
|
|||
|e: &str| dp_extensions.iter().any(|s| s == e),
|
||||
log.clone(),
|
||||
)
|
||||
.map_err(Error::DisplayNotSupported)?
|
||||
.map_err(Error::DisplayCreationError)?
|
||||
};
|
||||
if display == ffi::egl::NO_DISPLAY {
|
||||
return Err(Error::DisplayNotSupported);
|
||||
}
|
||||
|
||||
let egl_version = {
|
||||
let mut major: MaybeUninit<ffi::egl::types::EGLint> = MaybeUninit::uninit();
|
||||
|
|
|
@ -15,9 +15,12 @@ pub enum Error {
|
|||
/// Backend does not match the context type
|
||||
#[error("The expected backend '{0:?}' does not match the runtime")]
|
||||
NonMatchingBackend(&'static str),
|
||||
/// Display creation failed
|
||||
#[error("Display creation failed with error: {0:}")]
|
||||
DisplayCreationError(#[source] EGLError),
|
||||
/// Unable to obtain a valid EGL Display
|
||||
#[error("Unable to obtain a valid EGL Display. Err: {0:}")]
|
||||
DisplayNotSupported(#[source] EGLError),
|
||||
#[error("Unable to obtain a valid EGL Display.")]
|
||||
DisplayNotSupported,
|
||||
/// `eglInitialize` returned an error
|
||||
#[error("Failed to initialize EGL. Err: {0:}")]
|
||||
InitFailed(#[source] EGLError),
|
||||
|
|
Loading…
Reference in New Issue