Minor refactoring: removed getFullRow() function, added its code to getRow().
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2414 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/unix/x0vncserver/PollingManager.cxx b/unix/x0vncserver/PollingManager.cxx
index b3934a2..dfddbee 100644
--- a/unix/x0vncserver/PollingManager.cxx
+++ b/unix/x0vncserver/PollingManager.cxx
@@ -257,14 +257,8 @@
w += correction;
}
- // Read a row from the screen. Note that getFullRow() may be more
- // efficient than getRow() which is more general.
- // FIXME: Move the logic to getRow()?
- if (x == 0 && w == m_width) {
- getFullRow(y);
- } else {
- getRow(x, y, w);
- }
+ // Read a row from the screen into m_rowImage.
+ getRow(x, y, w);
// Compute a pointer to the initial element of m_changeFlags.
bool *pChangeFlags = &m_changeFlags[getTileIndex(x, y)];
diff --git a/unix/x0vncserver/PollingManager.h b/unix/x0vncserver/PollingManager.h
index e54494e..09cd5c3 100644
--- a/unix/x0vncserver/PollingManager.h
+++ b/unix/x0vncserver/PollingManager.h
@@ -83,13 +83,15 @@
r.width(), r.height(), r.tl.x, r.tl.y);
}
- inline void getFullRow(int y) {
- m_rowImage->get(DefaultRootWindow(m_dpy), m_offsetLeft, m_offsetTop + y);
- }
-
inline void getRow(int x, int y, int w) {
- m_rowImage->get(DefaultRootWindow(m_dpy),
- m_offsetLeft + x, m_offsetTop + y, w, 1);
+ if (w == m_width) {
+ // Getting full row may be more efficient.
+ m_rowImage->get(DefaultRootWindow(m_dpy),
+ m_offsetLeft, m_offsetTop + y);
+ } else {
+ m_rowImage->get(DefaultRootWindow(m_dpy),
+ m_offsetLeft + x, m_offsetTop + y, w, 1);
+ }
}
inline void getColumn(int x, int y, int h) {