Remove unsused, commented out code
diff --git a/common/rfb/SMsgWriter.cxx b/common/rfb/SMsgWriter.cxx
index f47f3ee..509ffbf 100644
--- a/common/rfb/SMsgWriter.cxx
+++ b/common/rfb/SMsgWriter.cxx
@@ -122,18 +122,6 @@
   return false;
 }
 
-// FIXME: This functions is not used because it incorrectly computes
-//        the number of rectangles if the Tight encoder is used.
-/*
-void SMsgWriter::writeFramebufferUpdate(const UpdateInfo& ui, ImageGetter* ig,
-                                        Region* updatedRegion)
-{
-  writeFramebufferUpdateStart(ui.numRects());
-  writeRects(ui, ig, updatedRegion);
-  writeFramebufferUpdateEnd();
-}
-*/
-
 bool SMsgWriter::needNoDataUpdate()
 {
   return false;
diff --git a/common/rfb/SMsgWriter.h b/common/rfb/SMsgWriter.h
index 3933b38..edf2944 100644
--- a/common/rfb/SMsgWriter.h
+++ b/common/rfb/SMsgWriter.h
@@ -109,18 +109,6 @@
     // order to flush out pseudo-rectangles to the client.
     virtual bool needFakeUpdate();
 
-    // writeFramebufferUpdate() writes a framebuffer update using the given
-    // UpdateInfo and ImageGetter.  On a V3 writer this may have
-    // pseudo-rectangles for setDesktopSize and setCursor added to it, and so
-    // may invoke writeSetCursorCallback().
-    //
-    // FIXME: This function is not used because it incorrectly computes
-    //        the number of rectangles if the Tight encoder is used.
-    /*
-    virtual void writeFramebufferUpdate(const UpdateInfo& ui, ImageGetter* ig,
-                                        Region* updatedRegion);
-    */
-
     // needNoDataUpdate() returns true when an update without any
     // framebuffer changes need to be sent (using writeNoDataUpdate()).
     // Commonly this is an update that modifies the size of the framebuffer