X-Git-Url: https://git.ti.com/gitweb?p=android%2Fexternal-libkmsxx.git;a=blobdiff_plain;f=libkms%2B%2B%2Fconnector.cpp;h=d00f3c756c8a50fc196fdb2ec221adc584ae44db;hp=06703d676f1d72821637b3ca138ca2a86dbb45bf;hb=42bc208e6b0a35c68e9bb156c8d463d1a9a946b9;hpb=e789f93b241fe74cf92eed9ffb0d18b853d79fa1;ds=sidebyside diff --git a/libkms++/connector.cpp b/libkms++/connector.cpp index 06703d6..d00f3c7 100644 --- a/libkms++/connector.cpp +++ b/libkms++/connector.cpp @@ -67,13 +67,15 @@ Connector::~Connector() void Connector::setup() { - if (m_priv->drm_connector->encoder_id != 0) { - auto enc = card().get_encoder(m_priv->drm_connector->encoder_id); - if (enc) - m_current_crtc = enc->get_crtc(); - } - - m_saved_crtc = m_current_crtc; + if (m_priv->drm_connector->encoder_id != 0) + m_current_encoder = card().get_encoder(m_priv->drm_connector->encoder_id); + else + m_current_encoder = 0; + + if (m_current_encoder) + m_saved_crtc = m_current_encoder->get_crtc(); + else + m_saved_crtc = 0; } void Connector::restore_mode() @@ -127,4 +129,13 @@ vector Connector::get_possible_crtcs() const return crtcs; } + +Crtc* Connector::get_current_crtc() const +{ + if (m_current_encoder) + return m_current_encoder->get_crtc(); + else + return 0; +} + }