[Bugfix] Improve fix for #3112731.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4210 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/common/rfb/ScreenSet.h b/common/rfb/ScreenSet.h
index f2df156..0023d72 100644
--- a/common/rfb/ScreenSet.h
+++ b/common/rfb/ScreenSet.h
@@ -76,7 +76,7 @@
inline void remove_screen(rdr::U32 id) {
std::list<Screen>::iterator iter, nextiter;
for (iter = screens.begin();iter != screens.end();iter = nextiter) {
- nextiter = ++iter;
+ nextiter = iter; nextiter++;
if (iter->id == id)
screens.erase(iter);
}