diff options
author | Chris Michael <cp.michael@samsung.com> | 2015-01-06 11:12:54 -0500 |
---|---|---|
committer | Chris Michael <cp.michael@samsung.com> | 2015-01-06 11:12:54 -0500 |
commit | 32a7eecf504238dd1340272134c53ced9208d5bc (patch) | |
tree | 9340847d4db72283a070b801fa87490fa7223c7a /src/lib/ecore_drm/ecore_drm_launcher.c | |
parent | 5eb11e1285a47e95ad3fa889dc94a30aef35aa90 (diff) |
ecore-drm: Fix incorrect launcher shutdown procedure
Summary: We need to clean tty handlers and close the tty Before we can
call logind_disconnect as that function ends up shuttting down our
dbus connection.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to 'src/lib/ecore_drm/ecore_drm_launcher.c')
-rw-r--r-- | src/lib/ecore_drm/ecore_drm_launcher.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/lib/ecore_drm/ecore_drm_launcher.c b/src/lib/ecore_drm/ecore_drm_launcher.c index e6309328a5..41f2fe1b50 100644 --- a/src/lib/ecore_drm/ecore_drm_launcher.c +++ b/src/lib/ecore_drm/ecore_drm_launcher.c | |||
@@ -147,20 +147,20 @@ ecore_drm_launcher_connect(Ecore_Drm_Device *dev) | |||
147 | EAPI void | 147 | EAPI void |
148 | ecore_drm_launcher_disconnect(Ecore_Drm_Device *dev) | 148 | ecore_drm_launcher_disconnect(Ecore_Drm_Device *dev) |
149 | { | 149 | { |
150 | if (logind) | ||
151 | { | ||
152 | logind = EINA_FALSE; | ||
153 | _ecore_drm_logind_disconnect(dev); | ||
154 | } | ||
155 | |||
156 | if (!ecore_drm_tty_close(dev)) | ||
157 | ERR("Launcher: failed to close tty\n"); | ||
158 | |||
159 | if (dev->tty.event_hdlr) ecore_event_handler_del(dev->tty.event_hdlr); | 150 | if (dev->tty.event_hdlr) ecore_event_handler_del(dev->tty.event_hdlr); |
160 | dev->tty.event_hdlr = NULL; | 151 | dev->tty.event_hdlr = NULL; |
161 | 152 | ||
162 | if (dev->tty.switch_hdlr) ecore_event_handler_del(dev->tty.switch_hdlr); | 153 | if (dev->tty.switch_hdlr) ecore_event_handler_del(dev->tty.switch_hdlr); |
163 | dev->tty.switch_hdlr = NULL; | 154 | dev->tty.switch_hdlr = NULL; |
155 | |||
156 | if (!ecore_drm_tty_close(dev)) | ||
157 | ERR("Launcher: failed to close tty\n"); | ||
158 | |||
159 | if (logind) | ||
160 | { | ||
161 | logind = EINA_FALSE; | ||
162 | _ecore_drm_logind_disconnect(dev); | ||
163 | } | ||
164 | } | 164 | } |
165 | 165 | ||
166 | static int | 166 | static int |