[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: async patch



>> On Sun, 19 Sep 2004 19:58:53 +0900
>> 「土」== tsuchiya@namazu.org (TSUCHIYA Masatoshi) said as follows:

土> それでまあ,ものすごくアドホックなパッチなんですが,async パッチに
土> 加えて,末尾に添付したパッチを適用すれば,async パッチと emacs-w3m 
土> が共存できるようになるのではないかと思います.

・text/plain や image/png などの text/html 以外のコンテンツが 
  emacs-w3m で表示できない.
・ftp:// にアクセスできない.

などの問題が見つかったので,末尾のパッチで差し換えます.

-- 
土屋 雅稔 ( TSUCHIYA Masatoshi )

--- w3m-0.5.1.orig/file.c	2004-09-30 12:06:02.000000000 +0900
+++ w3m-0.5.1/file.c	2004-09-30 12:01:07.000000000 +0900
@@ -19,6 +19,9 @@
 #include "local.h"
 #include "regex.h"
 
+void dump_extra(Buffer *);
+void dump_head(Buffer *);
+
 #ifndef max
 #define max(a,b)        ((a) > (b) ? (a) : (b))
 #endif				/* not max */
@@ -2030,8 +2033,15 @@
     }
 
   page_loaded:
+    if (w3m_dump & DUMP_EXTRA)
+	dump_extra(t_buf);
+    if (w3m_dump & DUMP_HEAD)
+	dump_head(t_buf);
+
     if (t_buf->page) {
 	FILE *src;
+	if (w3m_dump & DUMP_SOURCE)
+	    Strfputs(t_buf->page, stdout);
 #ifdef USE_IMAGE
 	if (image_source)
 	    return NULL;
--- w3m-0.5.1.orig/main.c	2004-09-30 12:06:02.000000000 +0900
+++ w3m-0.5.1/main.c	2004-09-30 12:04:18.000000000 +0900
@@ -1298,7 +1298,7 @@
 }
 #endif
 
-static void
+void
 dump_head(Buffer *buf)
 {
     TextListItem *ti;
@@ -1320,16 +1320,10 @@
     puts("");
 }
 
-static void
+void
 dump_extra(Buffer *buf)
 {
     printf("W3m-current-url: %s\n", parsedURL2Str(&buf->currentURL)->ptr);
-    if (buf->baseURL)
-	printf("W3m-base-url: %s\n", parsedURL2Str(buf->baseURL)->ptr);
-#ifdef USE_M17N
-    printf("W3m-document-charset: %s\n",
-	   wc_ces_to_charset(buf->document_charset));
-#endif
 #ifdef USE_SSL
     if (buf->ssl_certificate) {
 	Str tmp = Strnew();
@@ -1361,18 +1355,9 @@
     }
     do {
         if (Currentbuf->load_flag != BF_LOADING_HEADER) {
-	    if (flag & DUMP_EXTRA) {
-		dump_extra(Currentbuf);
-		flag &= ~DUMP_EXTRA;
-	    }
-	    if (flag & DUMP_HEAD) {
-		dump_head(Currentbuf);
-		flag &= ~DUMP_HEAD;
-	    }
-#if 0
-	    if (flag & DUMP_SOURCE)
-		dump_source(Currentbuf);
-#endif
+	    flag &= ~DUMP_EXTRA;
+	    flag &= ~DUMP_HEAD;
+	    flag &= ~DUMP_SOURCE;
 	    if (flag == DUMP_BUFFER &&
 		!(Currentbuf->post_flag & BF_RENDER_FRAME)) {
 		saveBuffer(Currentbuf, stdout, FALSE);