Fixed interger overflow in progress meter for large files
diff --git a/scp.c b/scp.c
index a592c2a..f6294f9 100644
--- a/scp.c
+++ b/scp.c
@@ -42,11 +42,11 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$Id: scp.c,v 1.2 1999/10/28 05:23:30 damien Exp $
+ *	$Id: scp.c,v 1.3 1999/11/11 01:25:14 damien Exp $
  */
 
 #include "includes.h"
-RCSID("$Id: scp.c,v 1.2 1999/10/28 05:23:30 damien Exp $");
+RCSID("$Id: scp.c,v 1.3 1999/11/11 01:25:14 damien Exp $");
 
 #include "ssh.h"
 #include "xmalloc.h"
@@ -976,7 +976,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$Id: scp.c,v 1.2 1999/10/28 05:23:30 damien Exp $
+ *	$Id: scp.c,v 1.3 1999/11/11 01:25:14 damien Exp $
  */
 
 char *
@@ -1121,7 +1121,7 @@
 	struct timeval now, td, wait;
 	off_t cursize, abbrevsize;
 	double elapsed;
-	int ratio, barlength, i, remaining;
+	unsigned int ratio, barlength, i, remaining;
 	char buf[256];
 
 	if (flag == -1) {
@@ -1132,7 +1132,7 @@
 	(void)gettimeofday(&now, (struct timezone *)0);
 	cursize = statbytes;
 	if (totalbytes != 0) {
-		ratio = cursize * 100 / totalbytes;
+		ratio = (cursize >> 10) * 100 / (totalbytes >> 10);
 		ratio = MAX(ratio, 0);
 		ratio = MIN(ratio, 100);
 	}