File tree Expand file tree Collapse file tree 2 files changed +8
-1
lines changed Expand file tree Collapse file tree 2 files changed +8
-1
lines changed Original file line number Diff line number Diff line change @@ -107,6 +107,7 @@ pub struct LockedDevice<'a> {
107107pub struct InnerDevice {
108108 pub dev_node : DrmNode ,
109109 pub render_node : DrmNode ,
110+ pub is_software : bool ,
110111 pub egl : Option < EGLInternals > ,
111112
112113 pub outputs : HashMap < connector:: Handle , Output > ,
@@ -124,6 +125,7 @@ impl fmt::Debug for InnerDevice {
124125 f. debug_struct ( "Device" )
125126 . field ( "dev_node" , & self . dev_node )
126127 . field ( "render_node" , & self . render_node )
128+ . field ( "is_software" , & self . is_software )
127129 . field ( "egl" , & self . egl )
128130 . field ( "outputs" , & self . outputs )
129131 . field ( "surfaces" , & self . surfaces )
@@ -323,6 +325,7 @@ impl State {
323325 inner : InnerDevice {
324326 dev_node : drm_node,
325327 render_node,
328+ is_software,
326329 egl : None ,
327330
328331 outputs : HashMap :: new ( ) ,
Original file line number Diff line number Diff line change @@ -238,7 +238,11 @@ fn determine_primary_gpu(
238238 }
239239
240240 // else just take the first
241- Ok ( drm_devices. values ( ) . next ( ) . map ( |dev| dev. inner . render_node ) )
241+ Ok ( drm_devices
242+ . values ( )
243+ . next ( )
244+ . filter ( |dev| !dev. inner . is_software )
245+ . map ( |dev| dev. inner . render_node ) )
242246}
243247
244248/// Create `GlowRenderer` for `EGL_MESA_device_software` device, if present
You can’t perform that action at this time.
0 commit comments