Added clearAll and clearSingle methods to FTProgress class.
Code improvements.


git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@380 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/rfb_win32/ProgressControl.cxx b/rfb_win32/ProgressControl.cxx
index 1beced0..85bd15f 100644
--- a/rfb_win32/ProgressControl.cxx
+++ b/rfb_win32/ProgressControl.cxx
@@ -31,6 +31,9 @@
 ProgressControl::ProgressControl(HWND hwndProgress)
 {
   m_hwndProgress = hwndProgress;
+  
+  m_dw64MaxValue = 0;
+  m_dw64CurrentValue = 0;
 }
 
 ProgressControl::~ProgressControl()
@@ -72,7 +75,12 @@
 bool
 ProgressControl::show()
 {
-  DWORD curPos = (DWORD) ((m_dw64CurrentValue * MAX_RANGE) / m_dw64MaxValue);
+  DWORD curPos;
+  if (m_dw64MaxValue != 0) {
+    curPos = (DWORD) ((m_dw64CurrentValue * MAX_RANGE) / m_dw64MaxValue);
+  } else {
+    curPos = 0;
+  }
   
   if (!SendMessage(m_hwndProgress, PBM_SETPOS, (WPARAM) curPos, (LPARAM) 0))
     return false;
@@ -83,5 +91,7 @@
 int 
 ProgressControl::getCurrentPercent()
 {
+  if (m_dw64MaxValue == 0) return 0;
+
   return ((int) ((m_dw64CurrentValue * 100) / m_dw64MaxValue));
 }
\ No newline at end of file