| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
* file.c (xface2xpm): use getImage()
(readHeader): check same file
(loadImageBuffer): rewrite
(lessopen_stream): shell_quote()
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
| |
* file.c (loadGeneralFile): return NULL when dump
* main.c (dump_source): deleted
(dump_head): deleted
(dupm_extra): deleted
(do_dump): added
(main): singal when dump
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Str.h (Strncmp_charp): paren
(Strncasecmp_charp): ditto
(Strinsert): ditto
(Strshrinkfirst): ditto
* display.c (disp_err_message): added
* file.c (loadGeneralFile): don't put function in macro arg
(saveBuffer): ditto
* frame.c (createFrameFile): ditto
* proto.h (disp_err_message): macro->function
* table.c (pushdata): if data is NULL, use ""
(suspend_or_pushdata): if line is NULL, use ""
* textlist.h (pushText): don't use (s) twice in a macro
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
| |
* file.c (readHeader): image_source ifdef USE_IMAGE
(loadGeneralFile): ditto
(uncompress_stream): ditto
From: WATANABE Katsuyuki <knabe@sannet.ne.jp>
|
| |
|
|
|
|
|
|
| |
* file.c (checkHeader): always remove_space
(loadGeneralFile): no need remove_space
From: Fumitoshi UKAI <ukai@debian.or.jp>
|
|
|
|
|
|
|
|
| |
* file.c (checkRedirection): added
(loadGeneralFile): check redirection
t_buf only is created when it is NULL
remove_space
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* etc.c (openSecretFile): use expandPath
(expandName): rewrite
(file_to_url): use expandPath
* file.c (_doFileCopy): use expandPath
(doFileSave): use expandPath
* indep.c (expandPath): rewrite
* linein.c (inputLineHistSearch): use expandPath
(next_dcompl): use expandPath
(doComplete): use expandPath
* local.c (set_cgi_environ): rewrite
* mailcap.c (loadMailcap): use expandPath
* main.c (svBuf): use expandPath
(addDownloadList): use expandPath
* rc.c (init_rc): use expandPath
(rcFile): rewrite
(auxbinFile): use expandPath
(libFile): use expandPath
(etcFile): use expandPath
(helpFile): use expandPath
* url.c (loadMimeTypes): use expandPath
(loadURIMethods): use expandPath
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* etc.c (reset_signals): static
don't ignore SIGUSR1
(close_all_fds_except): static
DEV_NULL_PATH
(setup_child): added
(myExec): rewrite
(mySystem): rewrite
* file.c (readHeader): check image_source
(loadGeneralFile): check image_source
(doExternal): use setup_child
(_doFileCopy): use setup_child
(doFileSave): use setup_child
(uncompress_stream): check image_source
use setup_child
* image.c (getCharSize): no need stderr redirect
(openImgdisplay): use setup_child
(loadImage): use setup_child
(getImageSize): no need stderr redirect
* local.c (writeLocalCookie): check Local_cookie_file
(localcgi_popen_rw): added
(localcgi_popen_r): deleted
(localcgi_post): rewrite
(localcgi_get): deleted
* proto.h (localcgi_get): defined by localcgi_post
(reset_signals): deleted
(close_all_fds_except): deleted
(close_all_fds): deleted
(setup_child): added
* search.c (open_migemo): use setup_child, myExec
* w3mimgdisplay.c (main): use DEV_NULL_PATH
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* cookie.c (save_cookies): return if no_rc_dir
* etc.c (tmpf_base): add cookie
(tmpfname): use tmp_dir instead of rc_dir
* file.c (loadGeneralFile): cookie is not passed via URL
* fm.h (TMPF_COOKIE): incl
(MAX_TMPF_TYPE): incl
(no_rc_dir): added
(tmp_dir): added
(config_file): added
* local.c (Local_cookie_file): added
(writeLocalCookie): added
(setLocalCookie): dont set environment LOCAL_COOKIE
(localcgi_post): writeLocalCookie
(localcgi_get): writeLocalCookie
* main.c (config_filename): deleted
(cmd_loadURL): arg FormList
(main): rewrite config_file, rc
(ldhelp): no cookie in URL
(cmd_loadURL): arg FormList
(goURL0): cmd_loadURL change
(cmd_loadBuffer): cmd_loadURL change
(adBmark): cookie is posted
(follow_map): cmd_loadURL change
(linkMn): cmd_loadURL change
(reinit): init_rc change
* proto.h (create_option_search_table): deleted
(init_rc): no args
* rc.c (create_option_search_table): static
(init_rc): no args
rewrite
(optionpanel_src1): rewrite
(load_option_panel): html_quote
(panel_set_option): no_rc_dir
* w3mbookmark.c: rewrite
* w3mhelperpanel.c: rewrite
* scripts/dirlist.cgi.in: rewrite
* scripts/w3mhelp.cgi.in: rewrite
* scripts/w3mmail.cgi.in: rewrite
* scripts/multipart/multipart.cgi.in: rewrite
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
| |
* ftp.c (loadFTPDir): ditto
* fix indent
From: Fumitoshi UKAI <ukai@debian.or.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* anchor.c (_put_ahchor_news): always conv_str
(_put_anchor_all): always conv_str
* etc.c (close_all_fds): deleted
(close_all_fds_except): added, except fd=f is left open
* file.c (guess_filename): added
(UFhalfclose): added
(convertLine): cleanup_line if not raw mode
check uf
(readHeader): always convertLine
(loadGeneralFile): rewrite
(loadGopherDir): return Str, args change to ParsedURL and code
rewrite
(saveBuffer): always conv_str
(_doFileCopy): close_all_fds
(doFileSave): close_all_fds_except
(uncompress_stream): dup, close_all_fds_except
* form.c (form_fputs_decode): always conv_str
(input_textarea): convertLine
* frame.c (createFrameFile): convertLine
* ftp.c (loadFTPDir): arg code
rewrite
(readFTPDir): convertLine
* html.h (UFfileno): added
* image.c (loadImage): close_all_fds
* indep.h (RAW_MODE): added
* local.c (loadLocalDir): return Str
(dirBuffer): rewrite
(localcgi_popen_r): close_all_fds
* main.c (main): check SCM_LOCAL
print err_msg
* news.c (news_command): args cmd and arg
(news_quit): news_command
(openNewsStream): news_command
(readNewsgroup): deleted
(loadNewsgroup): added
(closeNews): added
* proto.h (loadGopherDir): update
(conv_str): define for no JP_CHARSET
(readFTPDir): deleted
(loadFTPDir): added
(readNewsgroup): deleted
(loadNewsgroup): added
(dirBuffer): deleted
(loadLocalDir): added
(close_all_fds): defined by close_all_fds_except
(close_all_fds_except): added
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file.c (FTPhalfclose): deleted
(loadGeneralFile): closeFTP when doFileSave is done
(_doFileCopy): return int
(doFileMove): return int
(doFileSave): return int
* ftp.c: rewrite
* main.c (w3m_exit): disconnectFTP
* proto.h (_doFileCopy): return int
(doFileMove): return int
(doFileSave): return int
(openFTP): deleted
(openFTPStream): return InputStream
(closeFTP): no arg
(Ftpfclose): disconnectFTP
* url.c (openFTPstream): deleted
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file.c (loadSomething): remove UFclose nntp:,news:
(loadFile): UFclose
(loadGeneralFile): always UFclose
* html.h (UFclose): only reset when ISclose ==0
* istream.c (ISclose): return int
(ISfileno): flag IST_UNCLOSE
* istream.h (ISclose): return int
(IST_UNCLOSE): added
* news.c (news_close): reset IST_UNCLOSE
(news_open): set IST_UNCLOSE
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* etc.c (tempfname): always file to delete
* file.c (xface2xpm): no need fileToDelete
(readHeader): ditto
(loadGeneralFile): ditto
(loadHTMLBuffer): ditto
(loadHTMLString): ditto
(loadGopherDir): ditto
(loadImageBuffer): ditto
(doExternal): rewrite
(doFileSave): no need fileToDelete
(uncompress_stream): ditto
* fm.h (CurrentPid): added
* image.c (getImage): cache->touch to delete
* local.c (setLocalCookie): use CurrentPid
(localcgi_post): fileToDelete
* main.c (main): CurrentPid
(pipeBuf): no need fileToDelete
(query_from_followform): CurrentPid
(vmSrc): no need fileToDelete
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
| |
* file.c (doExternal): bufp = NULL, return 1
(uncompress_stream): tempfname fileToDelete
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
| |
* file.c (uncompress_stream): child process initialized
* terms.c (close_tty): close unless stdin,out,err
(reset_tty): flush_tty, close_tty
(write1): flush_tty
(refresh): flush_tty
(flush_tty): check ttyf
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* buffer.c (reshapeBuffer): fix reading from stdin
fix -m option
* display.c (redrawNLine): rewrite
(redrawLine): return l instead of l->next
(redrawLineImage): ditto
* file.c (loadFile): read header even if skip header
(loadGeneralFile): read header even if skip header
* fm.h (SkipHeader): added
* main.c (main): check whether reading from stdin
SkipHeader
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file.c (process_img): check image.ext
(HTMLlineproc2body): check image.ext
(loadImageBuffer): url, ext is in URLFile
* frame.c (unloadFrame): no need to push to fileToDelete
(copyFrame): no need to reset FB_TODELETE
(resetFrameElement): f_body->source, buf->sourcefile
(frame_download_source): buf->source
buf->sourcefile reset
* frame.h (FB_NOCACHE): deleted
(FB_TODELETE): deleted
* main.c (vmSrc): Currentbuf->sourcefile
need_reshape if images exist
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
| |
* file.c (uncompress_stream): add src arg
(examineFile): change uncompress_stream
(loadGeneralFile): change uncompress_stream
(doExternal): src
(uncompress_stream): ext
tmpfile with same ext
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file.c (loadGeneralFile): check SCM_DATA
(loadImageBuffer): newBuffer()
* html.h (SCM_DATA): added
* indep.c (url_unquote): deleted
(Str_url_unquote): renamed from Str_form_unquote
+ is decoded is_form only
* indep.h (url_unquote): deleted
(Str_url_unquote): added
(Str_form_unquote): define by Str_url_unquote
* main.c (followA): file_unquote
(cmd_loadURL): file_unquote
* url.c (DefaultPort): add for data:
(schemetable): add "data"
(DefaultFile): SCM_FTPDIR
(parseURL): scheme copied from current
(parseURL2): SCM_DATA
check SCM_FTP, SCM_FTPDIR
(_parsedURL2Str): add data in scheme_str
handle SCM_DATA
SCM_FTPDIR
(openURL): file_unquote
handle SCM_DATA
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* anchor.c (_put_anchor_news): check '<'
(reAnchorNewsheader): added
* file.c (loadSomething): Subject: as buffername
(checkHeader): check buf->document_header
(loadGeneralFile): reAnchorNewsheader
* html.h (SCM_NNTP_GROUP): added
* main.c (main): delete USE_NNTP in switch (newbuf->real_scheme)
(chkNMIDBuffer): lowercase in url_like_pat
* news.c (add_news_message): add scheme, group as arg
(openNewsStream): check SCM_NNTP_GROUP
check current_news.host
(readNewsgroup): rewrite to support nntp:,news: extension
* proto.h (reAnchorNewsheader): added
* url.c (DefaultPort): add 119 for nntp group
(parseURL2): rewrite to support nntp:,news: extension
(_parsedURL2Str): add for SCM_NNTP_GROUP
(openURL): rewrite to support nntp:,news: extension
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
| |
* file.c (loadHTMLstream): unused variable `p'
* news.c (news_command): unused variable `c'
(news_open): unused variable `tmp'
(readNewsgroup): volatile page, qgroup, flag, start, end
uninitialized variable `page'
* url.c (openURL): unused variable `fw', `r', `stream'
From: Fumitoshi UKAI <ukai@debian.or.jp>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* XMakefile (LSRCS): add news.c
(LOBJS): add news.o
* file.c (loadSOmething): don't UFclose() for nntp/news
(readHeader): remove . at beginning of line for news
img link to file:
(loadGeneralFile): add SCM_NEWS_GROUP
don't UFclose() for nntp/news
(loadHTMLstream): . line check for news
(loadBuffer): . line check for news
* fm.h (NNTP_server): added
(NNTP_mode): added
(MaxNewsMessage): added
* html.h (SCM_NEWS_GROUP): added
* main.c (main): NNTP_server or NNTPSERVER
NNTP_mode or NNTPMODE
add SCM_NEWS_GROUP
(followA): remove news:..@.. check
(cmd_loadURL): remove news:...@.. check
(w3m_exit): disconnectNews
* proto.h (openNewsStream): added
(readNewsgroup): added
(disconnectNews): added
* rc.c (CMT_NNTP_SERVER): added
(CMT_NNTP_MODE): added
(CMT_MAX_NEWS): added
(params9): add nntpserver, nntpmode, max_news
* url.c (DefaultPort): add 119 for news group
(parseURL2): news:..@... is SCM_NEWS_GROUP
(_parsedURL2Str): add news for SCM_NEWS_GROUP
(openURL): cleanup SCM_NEWS
add SCM_NEWS_GROUP
* news.c: added
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
| |
|
|
|
|
|
| |
* file.c (loadGeneralFile): don't guessContentType if http errors
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Str.c (Strlower): TOLOWER
(Strupper): TOUPPER
* backend.c: delete ctype.h
* etc.c (gethtmlcmd): TOLOWER
* file.c (readHeader): TOLOWER
(checkOverWrite): TOLOWER
(guess_charset): TOLOWER
* ftp.c: delete ctype.h
* indep.c (strcasecmp): TOLOWER
(strncasecmp): TOLOWER
(strcasematch): TOLOWER
* istream.c: include myctype.h
(ssl_get_certificate): TOLOWER
* mailcap.c (mailcapMatch): TOLOWER
* main.c (_quitfm): TOLOWER
* menu.c (accesskey_menu): TOLOWER
* mimehead.c: include myctype.h
(decodeWord): TOUPPER
* mktable.c: delete ctype.h, include myctype.h
(main): IS_SPACE
* myctype.h: delete ctype.h
(TOLOWER): added
(TOUPPER): added
* parsetagx.c (parse_tag): TOLOWER
* rc.c (str_to_bool): TOLOWER
(str_to_color): TOLOWER
* regex.c: delete ctype.h, include myctype.h
(TOLOWER): added
(TOUPPER): added
(regmatch1): TOLOWER
(matchWhich): TOLOWER, TOUPPER
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
| |
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file.c (cur_title): added
(save_obuf): deleted
(process_title): added
(process_n_title): added
(feed_title): added
(HTMLtagproc1): rewrite HTML_TITLE, HTML_N_TITLE,
HTML_TITLE_ALT, HTML_N_HEAD, HTML_HEAD
(HTMLlineproc0): check RB_TITLE
(completeHTMLstream): add RB_TITLE
(loadHTMLstream): initialize cur_title
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
| |
* file.c (save_line): deleted
(save_prevchar): deleted
(save_obuf): added
(HTMLtagproc1): bcopy save_obuf
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file.c (getMetaRefreshParam): do nothing if refresh_interval < 0
(HTMLtagproc1): rewrite refresh
(HTMLlineproc2body): add HTML_META
* fm.h (BP_RELOAD): deleted
(Buffer): add event
(AL_IMPLICIT_DONE): deleted
(AL_ONCE): deleted
(AL_RESTORE): deleted
(AlarmEvent): added
* main.c (AlarmEvent): deleted
(PrevAlarm): deleted
(DefaultAlarm): added
(CurrentAlarm): point to DefaultAlarm
(main): CurrentKeyData, CurrentCmdData
handle Currentbuf->event
(SigAlarm): CurrentAlarm is pointer
(copyAlarmEvent): deleted
(setAlarm): setAlarmEvent pass &DefaultAlarm
(setAlarmEvent): arg event
(ldDL): no BP_RELOAD
* proto.h (setAlarmEvent): arg event
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* file.c (loadGeneralFile): PresetveTimestamp
(_doFileCopy): is_pipe, PreserveTimestamp
(doFileSave): PreserveTImestamp
* fm.h (PreserveTimestamp): added
* rc.c (CMT_PRESERVE_TIMESTAMP): added
(params3): add preserve_timestamp
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* etc.c (USE_COOKIE): moved
* file.c (utime.h): include
(setModtime): added
(loadGeneralFile): set f.modtime
(_doFileCopy): setModtime()
(doFileSave): setModtime()
* ftp.c (getFtpModtime): added
(openFTP): pass URLFile, set modtime
* html.h (URLFile): add modtime
* proto.h (openFTP): arg URLFile *uf
(mymktime): always
* url.c (init_stream): initialize modtime
(openFTPStream): pass URLFile
(openURL): openFTPStream
From: Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
|
|
|
|
|
| |
* file.c (guess_save_name): pass guess_filename
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
| |
* file.c (loadGeneralFile): fix SCM_UNKNONWN
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file.c (process_img): use div_int
(process_hr): use div_int
(process_idattr): don't close_anchor
(CLOSE_A): added
(HTMLtagproc1): </p> close anchor
<dl>,<ul>,<ol>,<blockquote>,<li>,<dt>,<dd> close anchor
<noframes> close anchor
<pre> close anchor
<center> close anchor
<div> close anchor
add DIV_INT
<form> close anchor
* html.c (TagMAP): add div_int
* html.h (HTML_DIV_INT): added
(HTML_N_DIV_INT): added
* tagtable.tab (div_int): added
(/div_int): added
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
| |
* file.c (HTMLlineproc0): continue -> R_ST_NORMAL
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
| |
* main.c (set_buffer_environ): unused variables `prev_col'
From: Fumitoshi UKAI <ukai@debian.or.jp>
|
|
|
|
|
| |
* file.c (loadGeneralFile): rewrite SCM_UNKNOWN
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
|
| |
* file.c (loadGeneralFile): NNTP as well as NEWS
* indep.c (url_unquote_char): check % hex hex
(url_unquote): unquote except \0, \n, \r
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* file.c (HTMLtagproc1): <s>..</s> is [S:...:S]
(HTMLtagproc0): <del> will delete <table>
* fm.h (RB_S): added
* html.c (TagMAP): <s>,</s>
move <internal>, </internal>
* html.h (HTML_S): added
(HTML_N_S): added
(HTML_INTERNAL): renumed
(HTML_N_INTERNAL): ditto
(MAX_HTMLTAG): add 2
* rc.c (CMT_DISP_INS_DEL): update
* table.c (feed_table_tag): add HTML_S, HTML_N_S
* table.h (TBLM_S): added
(TBLM_ANCHOR): renum
* tagtable.tab: (strike, s): HTML_S
(/strike, /s): HTML_N_S
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
|
| |
* file.c (HTMLtagproc1): close_anchor
* frame.c (createFrameFile): quote <
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
| |
* file.c (HTMLlineproc2body): cleanup
From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
|
|
|
|
| |
* NEWS: 0.3.2.2
From: Fumitoshi UKAI <ukai@debian.or.jp>
|