aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFumitoshi UKAI <ukai@debian.or.jp>2002-09-24 17:06:04 +0000
committerFumitoshi UKAI <ukai@debian.or.jp>2002-09-24 17:06:04 +0000
commit29e57b1c5cf0a87e5643a3da988201adb23714e4 (patch)
treee820e89b4ad0e7db726fbba2cb3dcfdb82ca9c28
parent[w3m-dev 03318] Re: Passwords (diff)
downloadw3m-29e57b1c5cf0a87e5643a3da988201adb23714e4.tar.gz
w3m-29e57b1c5cf0a87e5643a3da988201adb23714e4.zip
[w3m-dev 03319] mailto
* main.c (followA): mailto * main.c (cmd_loadURL): mailto * url.c (_parsedURL2Str): mailto: query From: AIDA Shinra <aida-s@jcom.home.ne.jp>
-rw-r--r--ChangeLog9
-rw-r--r--main.c28
-rw-r--r--url.c6
3 files changed, 38 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 74ed6d5..fb01f65 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2002-09-25 AIDA Shinra <aida-s@jcom.home.ne.jp>
+ * [w3m-dev 03319] mailto
+ * main.c (followA): mailto
+ * main.c (cmd_loadURL): mailto
+ * url.c (_parsedURL2Str): mailto: query
+
+2002-09-25 AIDA Shinra <aida-s@jcom.home.ne.jp>
+
* [w3m-dev 03318] Re: Passwords
* etc.c (struct auth_path): added
(passwords): added
@@ -3815,4 +3822,4 @@
* release-0-2-1
* import w3m-0.2.1
-$Id: ChangeLog,v 1.428 2002/09/24 16:35:02 ukai Exp $
+$Id: ChangeLog,v 1.429 2002/09/24 17:06:04 ukai Exp $
diff --git a/main.c b/main.c
index 539fd64..7fa0bf2 100644
--- a/main.c
+++ b/main.c
@@ -1,4 +1,4 @@
-/* $Id: main.c,v 1.112 2002/09/05 15:49:50 ukai Exp $ */
+/* $Id: main.c,v 1.113 2002/09/24 17:06:04 ukai Exp $ */
#define MAINPROGRAM
#include "fm.h"
#include <signal.h>
@@ -2729,11 +2729,22 @@ followA(void)
#endif
) {
/* invoke external mailer */
+ Str to = Strnew_charp(a->url + 7);
+#ifndef USE_W3MMAILER
+ char *pos;
+ if (!non_null(Mailer)) {
+ disp_err_message("no mailer is specified", TRUE);
+ return;
+ }
+ if ((pos = strchr(to->ptr, '?')) != NULL)
+ Strtruncate(to, pos - to->ptr);
+#endif
fmTerm();
- system(myExtCommand(Mailer, shell_quote(url_unquote(a->url + 7)),
+ system(myExtCommand(Mailer, shell_quote(url_unquote(to->ptr)),
FALSE)->ptr);
fmInit();
displayBuffer(Currentbuf, B_FORCE_REDRAW);
+ pushHashHist(URLHist, a->url);
return;
}
#ifdef USE_NNTP
@@ -3691,11 +3702,22 @@ cmd_loadURL(char *url, ParsedURL *current, char *referer)
#endif
) {
/* invoke external mailer */
+ Str to = Strnew_charp(url + 7);
+#ifndef USE_W3MMAILER
+ char *pos;
+ if (!non_null(Mailer)) {
+ disp_err_message("no mailer is specified", TRUE);
+ return;
+ }
+ if ((pos = strchr(to->ptr, '?')) != NULL)
+ Strtruncate(to, pos - to->ptr);
+#endif
fmTerm();
- system(myExtCommand(Mailer, shell_quote(url_unquote(url + 7)),
+ system(myExtCommand(Mailer, shell_quote(url_unquote(to->ptr)),
FALSE)->ptr);
fmInit();
displayBuffer(Currentbuf, B_FORCE_REDRAW);
+ pushHashHist(URLHist, url);
return;
}
#ifdef USE_NNTP
diff --git a/url.c b/url.c
index dc98aef..619e683 100644
--- a/url.c
+++ b/url.c
@@ -1,4 +1,4 @@
-/* $Id: url.c,v 1.49 2002/09/24 16:35:02 ukai Exp $ */
+/* $Id: url.c,v 1.50 2002/09/24 17:06:05 ukai Exp $ */
#include "fm.h"
#include <sys/types.h>
#include <sys/socket.h>
@@ -1114,6 +1114,10 @@ _parsedURL2Str(ParsedURL *pu, int pass)
#ifndef USE_W3MMAILER
if (pu->scheme == SCM_MAILTO) {
Strcat_charp(tmp, pu->file);
+ if (pu->query) {
+ Strcat_char(tmp, '?');
+ Strcat_charp(tmp, pu->query);
+ }
return tmp;
}
#endif