[w3m-dev 04351] Re: "important" bugs from bugs.debian.org

[email protected] Sat, 31 Jul 2010 15:41:53 +0900
Newsgroups gmane.comp.web.w3m.devel
Message-ID <[email protected]>
# 3

On Thu, Jul 29, 2010 at 12:09:38PM +0900, [email protected] wrote:
> #387751
> w3m -cols 9999 -dump almost hangs computer
> http://bugs.debian.org/387751
> 
> -cols  9999  -dump 
> 
> # 99999 




# backend.c 
# 

--- fm.h.orig	2010-07-26 20:42:45.000000000 +0900
+++ fm.h	2010-07-30 15:44:22.000000000 +0900
@@ -101,6 +101,9 @@
 #define LINELEN	256		/* Initial line length */
 #define PAGER_MAX_LINE	10000	/* Maximum line kept as pager */
 
+#define MAXIMUM_COLS	1024
+#define DEFAULT_COLS	80
+
 #ifdef USE_IMAGE
 #define MAX_IMAGE 1000
 #define MAX_IMAGE_SIZE 2048
--- main.c.orig	2010-07-26 09:16:53.000000000 +0900
+++ main.c	2010-07-30 15:44:45.000000000 +0900
@@ -798,8 +798,11 @@
 	w3m_dump = DUMP_BUFFER;
     }
     if (w3m_dump) {
-	if (COLS == 0)
-	    COLS = 80;
+	if (COLS == 0) {
+	    COLS = DEFAULT_COLS;
+	} else if (COLS > MAXIMUM_COLS) {
+	    COLS = MAXIMUM_COLS;
+	}
     }
 
 #ifdef USE_BINMODE_STREAM
--- backend.c.orig	2010-07-19 15:47:34.000000000 +0900
+++ backend.c	2010-07-30 15:45:09.000000000 +0900
@@ -293,8 +293,11 @@
     char *str;
 
     w3m_dump = 0;
-    if (COLS == 0)
-	COLS = 80;
+    if (COLS == 0) {
+	COLS = DEFAULT_COLS;
+    } else if (COLS > MAXIMUM_COLS) {
+	COLS = MAXIMUM_COLS;
+    }
 #ifdef USE_MOUSE
     use_mouse = FALSE;
 #endif				/* USE_MOUSE */