X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Frunxdg.cpp;fp=src%2Frunxdg.cpp;h=6b8018e920de6037989a7b7df6f7c86ff1e0742f;hb=ec58658f638a8d433f75d64807c0af4db6987e5a;hp=356e24fbd25e6dbc8bed1ae211d4340d4b867704;hpb=e9e1d37d422da00f6b4c53fce9dccfd0ca7138db;p=staging%2Fxdg-launcher.git diff --git a/src/runxdg.cpp b/src/runxdg.cpp index 356e24f..6b8018e 100644 --- a/src/runxdg.cpp +++ b/src/runxdg.cpp @@ -28,6 +28,7 @@ #include #include +#include #include #include "cpptoml/cpptoml.h" @@ -518,14 +519,10 @@ void POSIXLauncher::register_surfpid (pid_t surf_pid) void POSIXLauncher::unregister_surfpid (pid_t surf_pid) { - auto itr = m_pid_v.begin(); - while (itr != m_pid_v.end()) { - if (*itr == surf_pid) { - m_pid_v.erase(itr++); - } else { - ++itr; - } - } + auto beg = m_pid_v.begin(); + auto end = m_pid_v.end(); + m_pid_v.erase(std::remove(beg, end, surf_pid), end); + AGL_DEBUG("Unregistered surface (id=%d sz=%u)", surf_pid, m_pid_v.size()); } pid_t POSIXLauncher::find_surfpid_by_rid (pid_t rid)