■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50
プログラマが2chを救う!?
- 1 :デフォルトの名無しさん :2001/08/25(土) 19:48
-  結局のところ資金面の調達が不可能なのなら、ここ(技術板)が 
 動かないと2ch縮小・停止の情勢・・・。
 
 具体的には・・・
 ・P2Pシステムが代替案としては妥当なのか否か
 ・他の優良アイデアはあるのか
 ・言語は何を選ぶのか
 ・根本的な問題として、2ch(ひろゆき等々)を救う必要があるのか
 
 を話し合っていただきたいと思います。
 では、どうぞ・・・・
 
 
- 764 :デフォルトの名無しさん :01/08/27 00:45 ID:2MpScvZw
-  web製作板は転送量を減らしに躍起になって、 
 肝心なのを見失ってるって感じ。
 せっかくのいい機会なのに……。
 
 
- 765 :デフォルトの名無しさん :01/08/27 00:46 ID:9mNBJEMM
-  read.cgiで削れるところは少ないな。 
 とりあえず 最新レス100の100を半角にするか?(笑
 あと「名前:」「投稿日:」削る、っていきなりやっていいんだろうか。
 
 
- 766 :デフォルトの名無しさん :01/08/27 00:46 ID:NsFeEjCc
-  GetString (>690) が変わればすぐにもリンクの文字列が短くなり始めるのでは。 
 >620 (どのくらい検証されてる? さらなる改善は?)のように
 dst を 20バイトしか使わないなら、char zz_im[1024] などとなっているのも [20] でいい。
 
 
- 767 :名無し娘。 ◆vP.bOZFQ  :01/08/27 00:47 ID:Km.fZ5BI
-  まずは見た目に尽きにくい所から削っています。 
 HTML内の"\n"とか。
 
 
- 768 :デフォルトの名無しさん :01/08/27 00:47 ID:yw5i/z86
-  HTTP_ACCEPT_ENCODING: x-gzip にも対応しとかないの? 
 今時、ほとんどないだろうけどね。
 x-gzipにgzipを返しちゃいけません。
 
 #ifdef GZIP
 if(zz_http_encoding && strstr(zz_http_encoding,"x-gzip")){
 gzip_flag = 1;
 printf("Content-Encoding: x-gzip\n");
 }else if(zz_http_encoding && strstr(zz_http_encoding,"gzip")){
 gzip_flag = 1;
 printf("Content-Encoding: gzip\n");
 }else{
 gzip_flag = 0;
 }
 #endif
 
 
- 769 :名無し :01/08/27 00:48 ID:N77k73Ds
-   レスの表示形式 
 312 名無し 01/08/26/日 15:40
 に意見がまとまりました。
 
 
- 770 :デフォルトの名無しさん :01/08/27 00:49 ID:NsFeEjCc
-  >765 ファイル名を r.g か何かにして、.g を .cgi と同じに扱う(笑 
 
 
- 771 :名無し娘。 ◆vP.bOZFQ  :01/08/27 00:49 ID:Km.fZ5BI
-  >>766 
 そうですね。GetString関係は、まずread.cgiで(現在との互換性を
 保ちつつ)実装しておきましょうか。
 検証お願いします。できたら、最終版へのリンクもあるとありがたいです。
 
 
- 772 :デフォルトの名無しさん :01/08/27 00:49 ID:pckFEAaY
-  HTTPヘッダ出力したところで 
 
 fflush(stdout);
 gzdopen(1);
 func_type *pFunc = gzip_flag ? gz_printf : fprintf;
 
 して、printf を関数ポインタに置き換えるだけじゃだめなん?
 gzip.c 組み込みって何してんの?
 
 
- 773 :名無し娘。 ◆vP.bOZFQ  :01/08/27 00:50 ID:Km.fZ5BI
-  >>769 
 それ、やっていいんですかね(笑
 夜勤★さんなりの確認いただけないでしょうか
 
 
- 774 :デフォルトの名無しさん :01/08/27 00:52 ID:oFtR0rYM
-  ■掲示板に戻る■ 
 はなくても使い勝手が変わらないかと思います。
 
 
- 775 :デフォルトの名無しさん :01/08/27 00:52 ID:eF1BPT8s
-  既出かもしれないけど。 
 
 >>000
 のリンクで対象レス番号が既にブラウザで表示されている
 範囲内にある時は<a name=〜>で移動するように
 処理したら少しはread.cgiの呼び出し回数&転送量が減るかも。
 
 
- 776 :デフォルトの名無しさん :01/08/27 00:53 ID:9mNBJEMM
-  日付形式はbbs.cgiに任せたほうがいいんじゃないか? 
 現状datのそのまま出力してるだけだし。
 
 
- 777 :デフォルトの名無しさん :01/08/27 00:53 ID:vN9r/JlA
-  gzip 組み込むと GPL 適用だぞ。 
 
 
- 778 :デフォルトの名無しさん :01/08/27 00:54 ID:3lNlqFsM
-  >>774 
 他の板のスレッドから飛んだとき、「ここはどこだ?」となることがあったりする。
 個人的には残して欲しい。
 
 
- 779 :デフォルトの名無しさん :01/08/27 00:54 ID:nQB5Vf12
-  確かに今やってることって 
 『今の2ちゃんねる』の転送量を軽減することですよね。
 あまり見た目は変えない方が良いかと。
 
 
- 780 :369 ◆3XTuRnAc  :01/08/27 00:56 ID:xXHglqmc
-  >>772 
 えと、正確には「gzipにread.cgiを強引にマージしよう」っていう話です。
 
 gzdopen()っていう名前から聞くと、gzlibとかそう言うのがあるのでしょうか。
 man page見ても見つからないから、ひょっとしたら後から追加しないと
 行けないのかな・・・>FreeBSD
 
 情報お願いします。
 
 
- 781 :デフォルトの名無しさん :01/08/27 00:56 ID:oFtR0rYM
-  >778 
 スレに用はあっても、板に用はないんじゃないですかね?
 どんなもんでしょ?
 
 
- 782 :デフォルトの名無しさん :01/08/27 00:57 ID:9mNBJEMM
-  とりあえず今日は見た目はあまり変えないって方針で。 
 でも名前:、投稿日:、は消してもよさそうだけどな。
 
 
- 783 :デフォルトの名無しさん :01/08/27 00:58 ID:2MpScvZw
-  >>782 
 UIはまだ議論の余地があると思うので、
 今回はあまりいじらない方がいいですね。
 
 
- 784 :デフォルトの名無しさん :01/08/27 00:58 ID:pckFEAaY
-  >>780 
 zlib なんすけど、FreeBSD-4 なら /usr/include/zlib.h のコメント読んで
 
 
- 785 :782 :01/08/27 00:58 ID:9mNBJEMM
-  あら、index2.htmに「投稿日:」が消えてますね。 
 こりゃread.cgiも消しちゃってOKじゃねーかな。
 
 
- 786 :369 ◆3XTuRnAc  :01/08/27 00:59 ID:xXHglqmc
-  >>777 
 ええ、その辺は承知してます。
 もしgzip組み込みがうまく行って、かつ、read.cgiのGPL適用が
 問題なく、かつ、組み込む価値があるなら採用、どれかひとつでも
 欠ければ不採用ってので今は組み込みやってるところです。
 
 まあ、今は単純な興味を満たす自己満足みたいなものですかね。
 それでうまく行けば儲け物っていう。
 
 
- 787 :369 ◆3XTuRnAc  :01/08/27 00:59 ID:xXHglqmc
-  あ、zlibでしたか。了解です。 
 
 
- 788 :デフォルトの名無しさん :01/08/27 01:00 ID:iuwjXswY
-  mod_gzipって確定なのかな? 
 確定ならgzip組み込みって無い方がシンプルでいいと思う。
 
 
- 789 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:03 ID:Km.fZ5BI
-  >>768 
 実装しました。まだ作業は続く。。。
 
 
- 790 :デフォルトの名無しさん :01/08/27 01:05 ID:DhF2Uz5c
-  入力フォームは必要でしょうか? 
 フォーム出力専用のCGIのリンクをつけるのは駄目ですか?
 
 
- 791 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:05 ID:Km.fZ5BI
-  えと、 
 >◆時刻の解析
 > >>473 >>477 >>482 >>489 >>515 >>517
 について、要するにどうすればいいのか、どなたかまとめていただけますか?
 
 
- 792 :デフォルトの名無しさん :01/08/27 01:06 ID:284T.QVo
-  zlib組み込みならGPLに感染しないで済むぞ↓ 
 http://www.gzip.org/zlib/zlib_license.html
 
 とはいえ788に同意
 
 
- 793 :デフォルトの名無しさん :01/08/27 01:08 ID:2Ic51Mxc
-  760の「この時間帯でも全レス表示可能」な問題って、 
 515、517の修正は入らないんでしょうか?
 
 piza2(ここ)でも、全レス表示可能になってますが。
 read.cgi Ver5.xxのとこは全部そうかな?
 
 
- 794 :nanasi :01/08/27 01:09 ID:MWcmzrwU
-  age 
 
 
- 795 :デフォルトの名無しさん :01/08/27 01:09 ID:DhF2Uz5c
-  517で良いと。 
 
 mod_gzipはすぐにできないのでしょう?
 
 
- 796 :デフォルトの名無しさん :01/08/27 01:12 ID:3lNlqFsM
-  取りあえず、改良をお願いします。 
 
 <BODY TEXT=black BGCOLOR=#EFEFEF link=blue alink=red vlink=#660099>
 ↓
 <body>
 
 
- 797 :デフォルトの名無しさん :01/08/27 01:14 ID:2MpScvZw
-  >>796 
 <BODY TEXT=black BGCOLOR=#EFEFEF link=blue alink=red vlink=#660099>
 ↑相当をCSSで実現するということですよね?
 
 
- 798 :デフォルトの名無しさん :01/08/27 01:14 ID:ReF.V//c
-  むしろブラウザの設定任せにしてしまうということでは。 
 
 
- 799 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:15 ID:Km.fZ5BI
-  >>796-797 
 それは、管理のみなさんの了解はあるのでしょうか?
 
 
- 800 :デフォルトの名無しさん :01/08/27 01:15 ID:YgC5b35I
-  >797 
 ちなみに index2 では既に body の属性消されてますよ。
 
 
- 801 :デフォルトの名無しさん :01/08/27 01:16 ID:CbLq.TAQ
-  えー、これもガイシュツかもしれないのですが、 
 x-sjis を Shift_JIS にはまだできないのでしょうか?
 
 
- 802 :デフォルトの名無しさん :01/08/27 01:16 ID:DhF2Uz5c
-  body削りOKなら、HEAD内全部削除は駄目ですか?(^^; 
 
 
- 803 :デフォルトの名無しさん :01/08/27 01:17 ID:284T.QVo
-  >>795 
 515じゃない?
 
 
- 804 :デフォルトの名無しさん :01/08/27 01:17 ID:2MpScvZw
-  >>801 
 賛成です。
 
 
- 805 :デフォルトの名無しさん :01/08/27 01:18 ID:oVJMiQ2Y
-  つか、encodingはmetaで指定するんじゃなくて、モノホンの 
 HTTPレスポンスで出した方が良くない?
 
 
- 806 :デフォルトの名無しさん :01/08/27 01:18 ID:2MpScvZw
-  >>802 
 title要素は必要です。
 
 
- 807 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:19 ID:Km.fZ5BI
-  んと、bodyとかheadの部分は後回しにしておきますから、夜勤さんに 
 お出で願えないかなぁ。
 
 
- 808 :デフォルトの名無しさん :01/08/27 01:19 ID:oVJMiQ2Y
-  <body>とか<head>とかは省略可能タグじゃなかった? 
 
 
- 809 :348 :01/08/27 01:20 ID:ynZt.qo6
-  あ、またバージョンアップしてますね 
 http://star.endless.ne.jp/users/forcount/contents/scriptmaker/read11.rev3.c
 こんな感じでage
 
 
- 810 :名無し :01/08/27 01:20 ID:N77k73Ds
-  夜勤さん、どこにいるんでしょうね。 
 
 
- 811 :デフォルトの名無しさん :01/08/27 01:21 ID:2MpScvZw
-  >>808 
 時代と逆行してる気がする
 
 
- 812 :デフォルトの名無しさん :01/08/27 01:21 ID:cn52pBwI
-  >>810 
 お呼び出しはしておきました。
 
 
- 813 :nanasi :01/08/27 01:23 ID:MWcmzrwU
-  すんません、ここを巡回できるようにしたいのですが、 
 どのカテゴリで探せばよいでしょ?
 
 
- 814 :デフォルトの名無しさん :01/08/27 01:23 ID:DhF2Uz5c
-  >>803 
 
 そうでした。>>515です
 
 >>806
 
 ブックマーク用ですか?
 では、bodyのスレタイトルを消します?
 
 
- 815 :デフォルトの名無しさん :01/08/27 01:23 ID:pckFEAaY
-  >>791 
 cvs.apache.org から apr-util と apr を checkout。
 apr-util を make すると misc/ の中に apr_date.o てのがある。
 少々関数が不足しているので apr の方から cut&paste して追加。
 ヘッダは apr/include apr-util/include を両方使えばいいでしょう。
 
 といっても面倒くさいな。どうしよう。
 Apache Software Licence ってライブラリの一部切り出して(Copyright 残して)
 使っていいの?
 
 
- 816 :デフォルトの名無しさん :01/08/27 01:23 ID:tF8/p42I
-  >>813 
 ここはプログラム技術板です。
 
 
- 817 :デフォルトの名無しさん :01/08/27 01:24 ID:oVJMiQ2Y
-  とりあえず、 
 -printf("Content-type: text/html\n");
 +printf("Content-type: text/html; charset=Shift_JIS\n");
 にして、meta削るってのは?
 #かちゅ〜しゃが書き込み時にエラー判定ミスってて大変やわ
 
 
- 818 :ニュース速報板のタグが間違えている  :01/08/27 01:25 ID:X..P9zvs
-  ニュース速報板のタグが間違えている 
 わさと?ガイシュツ?
 
 <a href="../news/./index2.htm">リロード</a>
 
 これって index2.htm ではなく index2.html じゃないの?
 このリンク先をクリックすると画面が狂って表示されない。
 
 
- 819 :nanasi :01/08/27 01:25 ID:MWcmzrwU
-  >>816 
 ギコナビ使ってるんですが、プログラム技術のカテゴリが
 見つかりません(涙
 
 
- 820 :デフォルトの名無しさん :01/08/27 01:27 ID:284T.QVo
-  >>819 
 「プログラム」じゃないかな?
 
 
- 821 :デフォルトの名無しさん :01/08/27 01:28 ID:tF8/p42I
-  >>819 
 http://210.150.210.150/sage/bbstable.html
 ギコナビ使ったこと無いからわかんないんだけど
 bbstable見てみたらどうでしょう?
 
 
- 822 :nanasi :01/08/27 01:29 ID:MWcmzrwU
-  >>820 
 出てこないです・・・・。
 
 
- 823 :デフォルトの名無しさん :01/08/27 01:30 ID:GRBfg3.A
-  >>822 
 カテゴリはPC等だよ
 
 
- 824 :ニュース速報板のタグが間違えている  :01/08/27 01:30 ID:X..P9zvs
-  ニュース速報板のリロードのタグが間違えている 
 わさと?ガイシュツ?
 
 <a href="../news/./index2.htm">リロード</a>
 
 これって index2.htm ではなく index2.html じゃないの?
 このリンク先をクリックすると画面が狂って表示されない。
 
 それとここのスレに書き込むとエラーが出る by かちゅーしゃ
 
 
- 825 :824 :01/08/27 01:32 ID:X..P9zvs
-  test 
 
 
- 826 :デフォルトの名無しさん :01/08/27 01:32 ID:GRBfg3.A
-  >>824 
 ホットゾヌだとエラーがでるが書き込めてるみたい。
 
 
- 827 :名無し :01/08/27 01:33 ID:N77k73Ds
-  345 名前:夜勤 ★ 投稿日:01/08/26 23:48 ID:H8NM1U/A 
 read.cgi の改良で、25% くらいの改善の見込みが付いたところでしょうか、
 で index2.html とか若干のインターフェイスの修正でさらに 20% くらいの
 改善を目論んでいる(やってみなきゃ分からない)というのが、今の状況
 です。さらにいくつかのサーバを停止すれば、目標である 50Mbps以下
 にはなると思います。
 
 じゃー これが何を意味するのか?ということですが、
 
 2ちゃんねるが黒字の経営(言葉のつっこみは勘弁)であれば、60% 以上の
 経営効率化に成功したとうことでしょうが、、、
 残念ながら、今の2ちゃんねるにおいては、若干の延命措置を施した
 だけだったりします。このへんのことは弁茶板の方々が詳しいと思います。
 
 
- 828 :デフォルトの名無しさん :01/08/27 01:33 ID:cn52pBwI
-  >>824&>>826 
 スレ違い
 2chの動作報告はここで。
 http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998808733
 君たちの行き先はこっち
 
 
- 829 :デフォルトの名無しさん :01/08/27 01:33 ID:BRbcVi3o
-  >>824 
 批判要望板へどうぞ。
 
 
- 830 :348 :01/08/27 01:33 ID:ynZt.qo6
-  かちゅ〜しゃもなんかエラーが出ますね 
 でも一応書き込めてるようですが・・・
 
 
- 831 :デフォルトの名無しさん :01/08/27 01:34 ID:pckFEAaY
-  Apache 1.3.20 の util_date.c なら単独ファイルだけで使えそうだ 
 からこっちにしますかね・・・
 
 
- 832 :nanasi :01/08/27 01:34 ID:MWcmzrwU
-  >>821 
 bbstable上手く開かないです・・・。
 >>822
 PC等は確認済みですが、プログラム技術カテゴリ無いです・・・。
 
 
- 833 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:35 ID:Km.fZ5BI
-  >>817 
 これってどうなのでしょう?
 # RFC読み読み中
 
 
- 834 :デフォルトの名無しさん :01/08/27 01:36 ID:cn52pBwI
-  >>832 
 http://piza2.2ch.net/tech/index2.html
 
 
- 835 :デフォルトの名無しさん :01/08/27 01:36 ID:8q2NINpg
-  ところで今現在の進捗はどうなってるの? 
 
 
- 836 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:36 ID:Km.fZ5BI
-  >>803 >>814 
 >>515 実装しました。
 
 
- 837 :デフォルトの名無しさん :01/08/27 01:37 ID:QEEMLonQ
-  >>832 だから板違いだ。作業の邪魔だから帰れ。 
 
 
- 838 :デフォルトの名無しさん :01/08/27 01:37 ID:IuzteUCY
-  >>833 
 古いネスケで文字化けする
 ネスケ切り捨てるならそれでもいいかも
 
 
- 839 :デフォルトの名無しさん :01/08/27 01:37 ID:DhF2Uz5c
-  夜勤さん待ち 
 
 
- 840 :348 :01/08/27 01:38 ID:ynZt.qo6
-  ところで今実際に稼働しているのはどのバージョンなんです? 
 まだ、read11とか動いてませんよね?
 
 http://star.endless.ne.jp/users/forcount/contents/scriptmaker/read11.rev3.c
 一応、最新版
 
 
- 841 :デフォルトの名無しさん :01/08/27 01:38 ID:oVJMiQ2Y
-  >>833 
 RFC的には、
 http://www.fxis.co.jp/DMS/sgml/xml/saloon/html_correct_charset.html
 ここいら見れ。
 
 
- 842 :nanasi :01/08/27 01:39 ID:MWcmzrwU
-  >>837 
 後学のため、ログ読みたかったのですが・・・・。
 堕ちます・・・。
 
 
- 843 :デフォルトの名無しさん :01/08/27 01:40 ID:DhF2Uz5c
-  >>838 
 
 SHIFT-JISなので、ほとんど化けない。
 
 
- 844 :デフォルトの名無しさん :01/08/27 01:40 ID:pckFEAaY
-  >>842 
 マジレスしとくと後学のためになるような作業ではない
 数学の勉強でもしてろ
 
 
- 845 :デフォルトの名無しさん :01/08/27 01:40 ID:ReF.V//c
-  Web制作板の守備範囲かもしらんけど、 
 <HTML></HTML>も消しちゃっていいことないスか?
 
 
- 846 :名無し :01/08/27 01:41 ID:N77k73Ds
-  鯖6台止める案が有力だって。  
 
 
- 847 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:41 ID:Km.fZ5BI
-  "charset=x-sjis" -> "charset=Shift_JIS" だけにしときます 
 
 
- 848 :デフォルトの名無しさん :01/08/27 01:41 ID:IuzteUCY
-  >>843 
 100%化けるんだよ。欧文文字コードと勘違いして。
 まあネスケがタコと言えばそのとおりなんだが。
 
 
- 849 :デフォルトの名無しさん :01/08/27 01:41 ID:2MpScvZw
-  >>845 
 時代に逆行しているような気がする
 
 
- 850 :デフォルトの名無しさん :01/08/27 01:42 ID:IuzteUCY
-  >>849 
 xhtmlとかにして無駄に転送量増やすくらいなら
 逆行してても仕方ない
 
 
- 851 :デフォルトの名無しさん :01/08/27 01:42 ID:oVJMiQ2Y
-  >>838 
 とりあえず、そーすみしてくれ。
 
 
- 852 :デフォルトの名無しさん :01/08/27 01:42 ID:BRbcVi3o
-  517 名前:夜勤 ★ 投稿日:01/08/27 01:40 ID:??? 
 read.cgi 5.xx の採用の結果(速報)
 
 ピーク時の転送量はだいたい 45% 減。
 CPU 負荷は、ほとんど導入前と変わらないようです。
 
 すごい効果がでていると思います。
 UNIX 板の方々に感謝!
 
 あとは mod_gzip がどうなるかが楽しみです。
 まだ、導入できると決まったわけじゃありませんが、
 
 
- 853 :801 :01/08/27 01:43 ID:CbLq.TAQ
-  バイト数を減らすという目的でいろいろ出てますが、 
 そのためにといってCGIにはかせるHTMLを
 最低限のヘッダ要件をも満たしてないものにするのは
 いかがなものかと思うわけです。
 
 
- 854 :デフォルトの名無しさん :01/08/27 01:44 ID:tF8/p42I
-  コピペです 
 
 
 517 名前:夜勤 ★ 投稿日:01/08/27 01:40 ID:???
 read.cgi 5.xx の採用の結果(速報)
 
 ピーク時の転送量はだいたい 45% 減。
 CPU 負荷は、ほとんど導入前と変わらないようです。
 
 すごい効果がでていると思います。
 UNIX 板の方々に感謝!
 
 あとは mod_gzip がどうなるかが楽しみです。
 まだ、導入できると決まったわけじゃありませんが、
 
 
- 855 :デフォルトの名無しさん :01/08/27 01:44 ID:IuzteUCY
-  >>851 
 「ネスケ 文字化け」とかでGoogleしてみてくれ
 結構有名だからWeb板の住人なら誰でも知ってそうだが
 
 
- 856 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:45 ID:Km.fZ5BI
-  >>853 
 個人的に同感です。
 ところで、そろそろ新スレ?
 あと、GetString関係、>>620をもとに実装してみます。
 それが終わったらコンパイルテスト後にソースアップします。
 
 
- 857 :デフォルトの名無しさん :01/08/27 01:45 ID:YgC5b35I
-  文字化け多発→リロードしまくり&あちこちで質問される→転送量増加 
 
 
- 858 :デフォルトの名無しさん :01/08/27 01:46 ID:cn52pBwI
-  新スレの1はこんな感じでいかがでしょう? 
 
 2chの読み出し[read.cgi]の最適化、効率化を中心に検討・開発しています。
 このスレッドへのご感想・不具合報告の投稿はお控えください。
 
 読み出しがうまくいかない・エラーなどの不具合報告はこちら
 ・2chの動作報告はここで。
 http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998808733
 
 現状へのご意見ご感想はこちら
 ・転送量(料)の増加で2ch閉鎖の危機!5
 http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998806470
 
 緊急対策コーディングはこちら
 ・UNIX板で2chのプログラムを開発中 パート 3
 http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998765190
 
 
- 859 :デフォルトの名無しさん :01/08/27 01:46 ID:IuzteUCY
-  x-sjisにする必要がないというならx-gzipにも配慮する必要ないと思う 
 
 
- 860 :デフォルトの名無しさん :01/08/27 01:46 ID:QEEMLonQ
-  <HTML>削るのは最後の最後の最後の手段だね。 
 
 
- 861 :Web制作板 :01/08/27 01:47 ID:3lNlqFsM
-  改良をお願いします。見かけとかは変わりません。 
 
 <div align=center><a href="http://www.2ch.net/info.html" border=0><img src="title.gif" border=0></a></div>
 ↓
 <p align=center><a href="http://www.2ch.net/info.html"><img src="title.gif" border=0></a></p>
 
 提案はまとめて出した方がいいでしょうか?それとも決定次第出した方がいいでしょうか?
 
 
- 862 :デフォルトの名無しさん :01/08/27 01:48 ID:IuzteUCY
-  <HTML>削ってもHTMLの仕様に違反するわけではないよ 
 分かってるとは思うけど
 http://www.ne.jp/asahi/minazuki/bakera/html/reference/basic#html
 
 
- 863 :名無し :01/08/27 01:49 ID:N77k73Ds
-  新スレにこれも載せてください。 
 
 http://www.gedoh.org/aki/2ch/wiki/yukiwiki.cgi?TopPage
 
 
- 864 :デフォルトの名無しさん :01/08/27 01:49 ID:YgC5b35I
-  htmlやbody削ると見れなくなるブラウザってある? 
 仕様よりも実装優先で。
 
 
- 865 :デフォルトの名無しさん :01/08/27 01:50 ID:2MpScvZw
-  >>862 
 http://www.w3.org/TR/xhtml11/
 
 
- 866 :デフォルトの名無しさん :01/08/27 01:49 ID:jRMpTCc6
-  <meta>タグは削らなくていいけど、 
 -printf("Content-type: text/html\n") ;
 +printf("Content-type: text/html; charset=Shift_JIS\n") ;
 は入れたほうがいいんじゃない? レスポンスヘッダ中にcharset指定がないと、
 2ch以外のShiftJISじゃないページからread.cgiにリンクが張られたとき
 <meta>タグ無視してNC4.xが判別に失敗するときあるし。
 
 
- 867 :デフォルトの名無しさん :01/08/27 01:50 ID:oVJMiQ2Y
-  >>860 
 DTD書いてない時点で、「ブラウザが解釈できる限界まで削る」という
 方針でもいいんじゃ無いかと思うけどな。
 
 >>855
 httpのヘッダでなく、metaに入れないと化けるって事なら、みつけられん
 charsetがShift_JISだから(x-sjisでないから)、ってことなら、了解。
 
 
- 868 :名無し :01/08/27 01:51 ID:N77k73Ds
-  夜勤さん、どこへ行っちゃったんだろうか? 
 
 
- 869 :デフォルトの名無しさん :01/08/27 01:51 ID:IuzteUCY
-  >>865 
 2chのhtmlはxhtmlじゃないでしょ
 もしそうならすでに違反しまくり
 今さら<HTML>を残したって同じこと
 そもそもxhtmlでは<html>と小文字でなくちゃ駄目
 
 
- 870 :デフォルトの名無しさん :01/08/27 01:52 ID:cn52pBwI
-  >>863 
 これでよろしいですか?
 
 2chの読み出し[read.cgi]の最適化、効率化を中心に検討・開発しています。
 このスレッドへのご感想・不具合報告の投稿はお控えください。
 
 読み出しがうまくいかない・エラーなどの不具合報告はこちら
 ・2chの動作報告はここで。
 http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998808733
 
 現状へのご意見ご感想はこちら
 ・転送量(料)の増加で2ch閉鎖の危機!5
 http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998806470
 
 緊急対策コーディングはこちら
 ・UNIX板で2chのプログラムを開発中 パート 3
 http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998765190
 
 ・開発用wiki(read.cgiソースなどの掲載があります)
 http://www.gedoh.org/aki/2ch/wiki/yukiwiki.cgi?TopPage
 
 
- 871 :デフォルトの名無しさん :01/08/27 01:52 ID:pckFEAaY
-  >娘。 
 日付関数動いた。
 compile するのに apache の tarball 要る(configure のため)と思う
 んだけどどうすればいいかな?
 夜勤さんの方でコンパイルするのにそれは辛いでしょ?
 # ちょっと今から configure 抜きで必要そうなファイルだけで試してみますが
 
 
- 872 :デフォルトの名無しさん :01/08/27 01:52 ID:YgC5b35I
-  タグ関連はここにどんどん書いてもらって、後で取捨選択しては? 
 http://www.gedoh.org/aki/2ch/wiki/yukiwiki.cgi?mycmd=read&mypage=%5B%5Bhtml%82%CC%8Ed%97l%5D%5D
 
 
- 873 :デフォルトの名無しさん :01/08/27 01:53 ID:IuzteUCY
-  >>867 
 詳しいことは忘れたけどmetaに入れた場合とHTTPヘッダに
 入れた場合でもネスケ3はなぜか動作が違う
 まあ苦情が来なければいいかも
 
 
- 874 :845 :01/08/27 01:53 ID:zjmRlAwo
-  すんません。やっぱこのスレで出すべき話じゃなかったかも。 
 
 
- 875 :デフォルトの名無しさん :01/08/27 01:55 ID:DhF2Uz5c
-  >>848 
 
 >>838で古いネスケって書いてあったので、Ver1や2の頃かと思っていました(^^;
 Ver4台で起きているのですね(^^;
 では、METAタグがよろしいかと。。。
 古いバージョンは逆にcharset=Shift_JISはOKなのかな。
 (スレ違いすみません)
 
 
- 876 :デフォルトの名無しさん :01/08/27 01:56 ID:6kfMn/mA
-  147 名前:夜勤 ★ :01/08/27 01:54 ID:??? 
 これから、全サーバに read.cgi 5.xx を入れに行ってきます。
 たくさんサーバあるので、ぼちぼち入れます。
 
 コピペです。
 
 
- 877 :デフォルトの名無しさん :01/08/27 01:56 ID:3lNlqFsM
-  >>872 
 後で取捨選択、をやろうとして現在Web制作の方が結構大変なことになってるんですが…。
 
 
- 878 :名無し :01/08/27 01:56 ID:N77k73Ds
-  >147 名前:夜勤 ★ :01/08/27 01:54 ID:??? 
 >これから、全サーバに read.cgi 5.xx を入れに行ってきます。
 >たくさんサーバあるので、ぼちぼち入れます。
 
 だそうです。最終版のプログラムを提示して下さい。
 
 
- 879 :スレ違いスマソ :01/08/27 01:57 ID:IuzteUCY
-  >>875 
 ネスケ1や2や4は大丈夫。だめなのはネスケ3のみ。
 ネスケ3だとcharset=Shift_JISもHTTPヘッダ使うのもだめ。
 
 
- 880 :名無し娘。 ◆vP.bOZFQ  :01/08/27 01:57 ID:Km.fZ5BI
-  んと、hoopsもう入れなくなってます(汗 
 アップできないのでしばらくお待ち下さい。。。
 # あぷろだにでもあげようか…
 
 
- 881 :デフォルトの名無しさん :01/08/27 01:59 ID:ZIaMkoUw
-  ウダウダレスしてねーで、はやく実行しろよ。 
 
 やっぱここはUNIX板とは違うオナ〜ニ板でしかなかったのか・・・
 
 
- 882 :デフォルトの名無しさん :01/08/27 01:59 ID:yw5i/z86
-  >>859 
 文字コードはブラウザで強制的に切り替えできるけど、
 x-gzipにgzipで返されるとどうにもならない。
 
 
- 883 :348 :01/08/27 01:59 ID:ynZt.qo6
-  こっちであげますよ 
 
 forcount@star.endless.ne.jp
 宛に
 id:2chread
 pass:readcgi
 という内容で添付して送っていただければ
 自動的にアップされます
 
 
- 884 :デフォルトの名無しさん :01/08/27 02:00 ID:pckFEAaY
-  >>881 
 メンバーほとんど同じだと思うけど
 
 
- 885 :369 ◆3XTuRnAc  :01/08/27 02:01 ID:xXHglqmc
-  >娘。さん 
 うちのftpつかってくれて良いですよ。ftpポート開いてます。
 210.170.170.131
 
 
- 886 :デフォルトの名無しさん :01/08/27 02:01 ID:IuzteUCY
-  >>882 
 ネスケ3もHTTPヘッダやhtmlで指示された文字コードは切り替えられない
 
 
- 887 :369 ◆3XTuRnAc  :01/08/27 02:01 ID:xXHglqmc
-  あ、そっちのほうがいいですね>>883さん 
 
 
- 888 :デフォルトの名無しさん :01/08/27 02:02 ID:QEEMLonQ
-  >>861 
 っと、それはbbs.cgiの部分だな。
 とりあえずWeb製作のスレで「決定事項」としてまとめとけば、
 必要になったらこっちから見に行くんじゃないかな。
 
 
- 889 :デフォルトの名無しさん :01/08/27 02:02 ID:ZIaMkoUw
-  こっちも見ろや 
 http://natto.2ch.net/test/read.cgi?bbs=hp&key=998774537&ls=50
 
 
- 890 :デフォルトの名無しさん :01/08/27 02:03 ID:BrafyimQ
-  ところで、最新ソースのレポジトリはどこさ? 
 
 
- 891 :デフォルトの名無しさん :01/08/27 02:03 ID:3lNlqFsM
-  >>888 
 了解しました。
 
 
- 892 :348 :01/08/27 02:05 ID:ynZt.qo6
-  >>883の手順でアップしたら 
 一応
 http://star.endless.ne.jp/users/forcount/4countbbs/scriptmaker/index.html
 に告知しておいて下さい
 5分ごとにチェックしてます
 
 
- 893 :デフォルトの名無しさん :01/08/27 02:06 ID:cn52pBwI
-  新スレ建てておきました。 
 
 
- 894 :名無し娘。 ◆vP.bOZFQ  :01/08/27 02:08 ID:Km.fZ5BI
-  >>883 
 使わせていただきました。ありがとうございます。
 ftp://210.170.170.131/incoming/2ch-read-current/read12.c
 ftp://210.170.170.131/incoming/2ch-read-current/Makefile
 コンパイルまでは確認済です。
 
 
- 895 :デフォルトの名無しさん :01/08/27 02:10 ID:cn52pBwI
-  失礼。 
 新スレのリンクし忘れました。
 http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998845501
 です。
 
 
- 896 :369 ◆3XTuRnAc  :01/08/27 02:11 ID:xXHglqmc
-  うーん、zlib対応がなんかいまいちうまく行かない。 
 gzprintfが、printfじゃなくてfprintf相当というのが結構面倒(^^;;。
 
 なんか、話を混乱させてしまいそうですし、できる見こみも少ないので
 「gzipマージ/zlib利用」はおいらのところでは断念することにします。
 
 みなさま、混乱させてごめんなさい。
 
 # 悔しい・・・。なにより、実現できると思ったことが実現できないことが。
 
 
- 897 :名無し娘。 ◆vP.bOZFQ  :01/08/27 02:11 ID:Km.fZ5BI
-  新スレあるけど、報告だけこちらに。 
 
 HTML吐き出し部分での改造は、"100"を"100"にしたこと、
 JavaScriptにエラーが出ない範囲で"\n"を省略したこと。
 read.cgiバージョン表示部分を短くしたこと。
 
 大きなことは、#ifdef GSTR2。
 
 その他は、x-gzipのこと、tm_nowのこと、x-sjisのこと。
 
 
- 898 :デフォルトの名無しさん :01/08/27 02:13 ID:pckFEAaY
-  >>896 
 printf 全置き換えでだめだったの?
 
 
- 899 :369 ◆3XTuRnAc  :01/08/27 02:22 ID:xXHglqmc
-  >>898 
 あ、それやってないです。
 ちょうどread12が公開された見たいだし、もう一度やってみようかな・・・。
 
 
- 900 :デフォルトの名無しさん :01/08/27 02:23 ID:KshZOEYc
-  >>896 
 やったところまで Wiki にでも上げといたらどう?
 誰か跡継いでくれるかもよ。
 
 
- 901 :デフォルトの名無しさん :01/08/27 02:24 ID:yw5i/z86
-  >>886 
 x-sjisは変わらんが、Shift-Jisは変えられる様だ。
 3.01jaを引っ張り出して来て試してみた。
 
 
- 902 :369 ◆3XTuRnAc  :01/08/27 02:26 ID:xXHglqmc
-  >娘。さん 
 read12.c、バグがあります。
 
 850行目
 char *zz_GetString(char *dst,char tgt)
 ↓
 char *zz_GetString(char *dst,char *tgt)
 
 861行目
 if(kk[0] == tgt)
 ↓
 if(kk[0] == tgt[0])
 
 じゃないですか?
 
 
- 903 :369 ◆3XTuRnAc  :01/08/27 02:28 ID:xXHglqmc
-  てことで、その修正入れたのを 
 
 ftp://210.170.170.131/incoming/2ch-read-current/read12.1.c
 
 としてコピーしておきました。
 
 
- 904 :デフォルトの名無しさん :01/08/27 02:30 ID:2NFCZnYc
-  新スレに移行された方がよいのでは? 
 プログラマが2chを救う!?2
 http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998845501
 
 
- 905 :772じゃないけど :01/08/27 02:34 ID:0cm50H8s
-  もうちょっと詳しく書くとこんな感じになるかな? 
 ----------------------------------------------------------------------
 #include <stdarg.h>
 #include <zlib.h>
 :
 /* 本当はグローバル変数を増やさない方がいいんだけど...
 printf()があちこちにあるので許してちょ */
 typedef int (*zz_printf_t)(gzFile *, cont char *, ...);
 static gzFile *zz_fptr = (gzFile *)stdout;
 static zz_printf_t zz_printf = (zz_printf_t)fprintf;
 :
 :
 if (gzip_flag) {
 :
 fflush(stdout);
 zz_fptr = gzdopen(1, "w");
 zz_printf = gzprintf;
 gzsetparams(zz_fptr, Z_BEST_COMRESSION, Z_DEFAULT_STRATEGY);
 :
 }
 :
 if (gzip_flag) {
 :
 gzclose(zz_gzfile);
 }
 ----------------------------------------------------------------------
 で ソース中の printf("fmt", ...) を (*zz_printf)(zz_fptr, "fmt", ...) に
 書き換えて Makefileで
 LDFLAGS = -s -lz
 を追加 あっ"-s"ってのは個人的な趣味なんで気に入らなければ外してもいいです
 
 
- 906 :デフォルトの名無しさん :01/08/27 02:35 ID:yw5i/z86
-  >>886 >>901 
 ごめん、Shift_JISだった。
 表示コードを変えられなかったが、sjisだと認識するんならOKだし、
 不明なコードなら変更できるんだからかまわないんでは。
 
 
- 907 :デフォルトの名無しさん :01/08/27 02:36 ID:pckFEAaY
-  >>905 
 そうそう、そんな感じで。
 
 
- 908 :デフォルトの名無しさん :01/08/27 02:38 ID:IuzteUCY
-  >>906 
 確か変えられなくて困った記憶があるんだが…記憶違いかも。
 確かめてみる。
 
 
- 909 :デフォルトの名無しさん :01/08/27 02:45 ID:vN9r/JlA
-  >>905 
 (*zz_printf)(zz_fptr, "fmt", ...)
 は
 zz_printf(zz_fptr,"fmt", ...)
 の方が良いと思われ。(ANSI C には反しない。)
 後で元に戻すとき楽だと思う。
 
 
- 910 :デフォルトの名無しさん :01/08/27 02:48 ID:pckFEAaY
-  てか、cpp では 
 
 #define printf(str, ...) zz_printf(zz_fptr, str, ...)
 
 みたいに可変引数できるんだっけ?
 
 
- 911 :デフォルトの名無しさん :01/08/27 02:51 ID:oVJMiQ2Y
-  #define printf(format, args...) zz_printf(zz_fptr, format, ## args) 
 ってのでGNU Cの拡張で「だけ」OKだったはず。
 
 
- 912 :デフォルトの名無しさん :01/08/27 02:51 ID:yw5i/z86
-  >>908 
 EUCなのに、x-sjisとかShift_JISとか書いてあって困ったんではないの。
 間違ってShift-Jisってやったら変えられたからね。
 
 
- 913 :デフォルトの名無しさん :01/08/27 02:52 ID:oVJMiQ2Y
-  http://www.asahi-net.or.jp/~wg5k-ickw/html/online/gcc-2.8.1/gcc_3.html 
 詳しくはここいらの「可変個の引数をもつマクロ」を見れ
 
 
- 914 :デフォルトの名無しさん :01/08/27 02:53 ID:pckFEAaY
-  ま、んなことせんでも引数1〜10個まで#defineすればいっか 
 
 
- 915 :908 :01/08/27 02:54 ID:IuzteUCY
-  すまん完全に勘違いしてた。 
 文字化けするのはネスケ2だった。
 
 
- 916 :デフォルトの名無しさん :01/08/27 02:55 ID:IuzteUCY
-  ネスケ2でShift_JISを指定してもEncodingがWesternに固定されて 
 変えられない。もちろん文書はシフトJIS。
 2.02で確認。
 
 
- 917 :デフォルトの名無しさん :01/08/27 02:58 ID:yw5i/z86
-  >>915 
 さすがに、ネスケ2はそこらに残してない。
 
 
- 918 :デフォルトの名無しさん :01/08/27 03:00 ID:5VdVXYrU
-  いまベンチャー板にひろゆき(本物)いた。 
 http://yasai.2ch.net/test/read.cgi?bbs=venture&key=998402480
 
 
- 919 :デフォルトの名無しさん :01/08/27 03:04 ID:pckFEAaY
-  ひろゆきが助けてくださいと言って 
 西さん一晩考えるって・・・
 
 
- 920 :- :01/08/27 03:29 ID:q7WWiv5M
-  全鯖に read.cgi ver5.02 入ってますな。夜勤さん、おつかれさま・・・ 
 
 
- 921 :デフォルトの名無しさん :01/08/27 04:01 ID:vN9r/JlA
-  実況防止機能(素早い reload を無視) 
 http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998764722&st=490
 
 
- 922 :らいがー。 :01/08/27 04:30 ID:R/rjVC1g
-  あなた達かっこいいよ・・・。 
 
 
- 923 :デフォルトの名無しさん :01/08/27 23:40 ID:bJ23bC3M
-  /*<ctype.h>等とかぶってたら、要置換*/ 
 #definefalse(0)
 #definetrue(!false)
 #define_C_(1<<0)/*datチェック用区切り文字等*/
 #define_U_(1<<1)/*URLに使う文字*/
 #define_S_(1<<2)/*SJIS1バイト目=<br>タグ直前の空白が削除可かを適当に判定*/
 
 //#defineisCheck(c)(flagtable[(unsigned char)(c)] & _C_)
 #defineisCheck(c)(flagtable[/*(unsigned char)*/(c)] & _C_)
 #defineisSJIS1(c)(flagtable[(unsigned char)(c)] & _S_)
 #definehrefStop(c)(!(flagtable[(unsigned char)(c)] & _U_))
 
 #define_0____(1<<0)
 #define__1___(1<<1)
 #define___2__(1<<2)
 #define____3_(1<<3)
 #define_____4(1<<4)
 
 #define______(0)
 #define_01___(_0____|__1___|0)
 #define__1_3_(__1___|____3_|0)
 #define___23_(___2__|____3_|0)
 #define_0_23_(_0____|___2__|____3_|0)
 
 
 char flagtable[256] = {
 _0____,______,______,______,______,______,______,______,//00-07
 ______,______,______,______,______,______,______,______,//08-0F
 ______,______,______,______,______,______,______,______,//10-17
 ______,______,______,______,______,______,______,______,//18-1F
 _0____,__1___,______,__1___,__1___,__1___,_01___,______,//20-27 !"#$%&'
 ______,______,__1___,__1___,_01___,__1___,__1___,__1___,//28-2F()*+,-./
 __1___,__1___,__1___,__1___,__1___,__1___,__1___,__1___,//30-3701234567
 __1___,__1___,__1___,__1___,_0____,__1___,______,__1___,//38-3F89:;<=>?
 __1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,//40-47@ABCDEFG
 __1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,//48-4FHIJKLMNO
 __1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,//50-57PQRSTUVW
 __1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,//58-5FXYZ[\]^_
 __1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,//60-67`abcdefg
 __1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,//68-6Fhijklmno
 __1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,//70-77pqrstuvw
 __1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,__1_3_,______,//78-7Fxyz{|}~
 ____3_,_0_23_,___23_,___23_,___23_,___23_,___23_,___23_,//80-87
 ___23_,___23_,___23_,___23_,___23_,___23_,___23_,___23_,//88-8F
 ___23_,___23_,___23_,___23_,___23_,___23_,___23_,___23_,//90-97
 ___23_,___23_,___23_,___23_,___23_,___23_,___23_,___23_,//98-9F
 ____3_,____3_,____3_,____3_,____3_,____3_,____3_,____3_,//A0-A7
 ____3_,____3_,____3_,____3_,____3_,____3_,____3_,____3_,//A8-AF
 ____3_,____3_,____3_,____3_,____3_,____3_,____3_,____3_,//B0-B7
 ____3_,____3_,____3_,____3_,____3_,____3_,____3_,____3_,//B8-BF
 ____3_,____3_,____3_,____3_,____3_,____3_,____3_,____3_,//C0-C7
 ____3_,____3_,____3_,____3_,____3_,____3_,____3_,____3_,//C8-CF
 ____3_,____3_,____3_,____3_,____3_,____3_,____3_,____3_,//D0-D7
 ____3_,____3_,____3_,____3_,____3_,____3_,____3_,____3_,//D8-DF
 ____3_,___23_,___23_,___23_,___23_,___23_,___23_,___23_,//E0-E7
 ___23_,___23_,___23_,___23_,___23_,___23_,___23_,___23_,//E8-EF
 ___23_,___23_,___23_,___23_,___23_,___23_,___23_,___23_,//F0-F7
 ___23_,___23_,___23_,___23_,___23_,______,______,______,//F8-FF
 };
 
 
- 924 :デフォルトの名無しさん :01/08/27 23:41 ID:bJ23bC3M
-  typedef struct {//class... 
 char **buffers;//csvの要素
 int rest;//残りのバッファサイズ・・厳密には判定してないので、数バイトは余裕が欲しい
 int isTeri;//
 } ressplitter;
 
 /*
 初期化
 toparrayポインタ配列のアドレス
 buffコピー先のバッファの先頭
 bufsize厳密には判定してないので、数バイトは余裕が欲しい
 */
 void ressplitter_init(ressplitter *This, char **toparray, char *buff, int bufsize/*, bool isteri*/)
 {
 This->buffers = toparray;
 This->rest = bufsize;
 This->isTeri = true;//レス1をstrstr("<>")した結果を設定すべき
 *This->buffers = buff;
 }
 
 /*
 findSplitterの代わり
 レスを全走査するが、コピーと変換(と削除)を同時に行う
 pコピー前のレス(BigBuffer内の1レス)
 istagcut<a href=...>と</a>をcutするか
 Return次のpの先頭
 non-TYPE_TERIなdatには,"<>"は含まれないはずなので、#ifdef TYPE_TERI は略
 */
 const char *ressplitter_split(ressplitter *This, const char *p, int istagcut)
 {
 char *bufp = *This->buffers;
 int bufrest = This->rest;
 while (--bufrest > 0) {
 int ch = *(unsigned char *)p;
 if (isCheck(ch)) {
 switch (ch) {
 case ' ':
 //無意味な空白は1つだけにする
 while (*(p+1) == ' ')
 p++;
 if (*(p+1) != '<')
 break;
 if (*(p+2) == '>') {
 if (bufp == *This->buffers)//名前欄が半角空白の場合
 *bufp++ = ' ';
 p += 3;
 goto Teri_Break;
 }
 
 if (memcmp(p, " <br> ", 6) == 0) {
 if (bufp != *This->buffers && isSJIS1(*(bufp-1))) {
 *bufp++ = ' ';
 }
 memcpy(bufp, "<br>", 4);
 p += 6;
 bufp += 4;
 continue;
 }
 break;
 
 
- 925 :デフォルトの名無しさん :01/08/27 23:42 ID:bJ23bC3M
-  case '<'://醜いが 
 if (*(p+1) == '>') {
 //This->isTeri = true;
 p += 2;
 goto Teri_Break;
 }
 if (istagcut) {
 //if (*(p+1) != 'b' || *(p+2) != 'r') {
 if ((*(p+1) == 'a' && *(p+2) == ' ') || (*(p+1) == '/' && *(p+2) == 'a')) {
 while (*p != '>') {//strchr(p, '>')
 if (*p == '\0')
 goto Break;
 ++p;
 }
 ++p;
 continue;
 }
 }
 break;
 case '&':
 if (memcmp(p, "&", 4) == 0) {
 if (*(p + 4) != ';')
 p += 4 - 1;
 }
 break;
 #ifndefTYPE_TERI
 case 0x81://*"@"
 //if (!This->isTeri) {
 if (memcmp(p, "@`", 4) == 0) {
 ch = ',';
 p += 4 - 1;
 }
 //}
 break;
 case ',':
 //if (!This->isTeri) {
 p++;
 goto Break;
 //}
 //break;
 #endif
 case '\0':
 goto Break;
 //break;
 default:
 break;
 }
 }
 *bufp++ = ch;
 p++;
 }
 
 
- 926 :デフォルトの名無しさん :01/08/27 23:43 ID:bJ23bC3M
-  Teri_Break: 
 //名前欄に','が入っている時にsplitをミスるので、見誤る可能性があるので、
 //This->isTeri = true;
 Break:
 *bufp++ = '\0';
 This->rest -= bufp - *This->buffers;
 *++This->buffers = bufp;
 
 //区切り末の空白を削除
 if (*p == ' ')
 ++p;
 return p;
 }
 
 void splitting_copy(char **s, char *bufp, const char *p, int size)
 {
 ressplitter res;
 ressplitter_init(&res, s, bufp, size);
 
 p = ressplitter_split(&res, p, false);//name
 p = ressplitter_split(&res, p, false);//mail
 p = ressplitter_split(&res, p, false);//date
 p = ressplitter_split(&res, p, LINKTAGCUT && IsBusy2ch());//text
 p = ressplitter_split(&res, p, false);//title
 //IsBusy2ch()を何度も呼ぶのは大きな無駄
 }
 
 
- 927 :デフォルトの名無しさん :01/08/27 23:43 ID:bJ23bC3M
-  その他に直す部分は、 
 先頭のほうに、
 #definefalse(0)
 #definetrue(!false)
 #defineLINKTAGCUTtrue
 
 out_html1()(369-)
 - strncpy(p, BigLine[0], 1024);
 - p[1024 - 1] = '\0';
 - if (!*p)
 - return 1;
 - res_split(s, p);
 + splitting_copy(s, p, BigLine[0], sizeof(p) - 20);
 + if (!*p)
 + return 1;
 
 out_html()(404-)
 - strncpy(p, BigLine[0], 1024);
 - p[1024 - 1] = '\0';
 - if (!*p)
 - return 1;
 - res_split(s, p);
 + splitting_copy(s, p, BigLine[0], sizeof(p) - 20);
 + if (!*p)
 + return 1;
 
 out_html()(421-)
 - strncpy(p, BigLine[line], 1024);
 - p[1024 - 1] = '\0';
 - if (!*p)
 - return 1;
 - res_split(s, p);
 + splitting_copy(s, p, BigLine[line], sizeof(p) - 20);
 + if (!*p)
 + return 1;
 
 hrefStop()
 マクロで定義しなおしているので、
 #if0
 #endif
 ででもはさんでくれ(コンパイルエラーが出る)。
 res_split()とfindSplitter()も必要なくなるが、エラーにはならないので。
 
 
- 928 :デフォルトの名無しさん :01/08/28 00:19 ID:gWXKzR9.
-  わかると思うけど、 
 >>925の
 case '&':
 の下は、当然、
 if (memcmp(p, "&", 4) == 0) {
 ね。
 
 
- 929 :デフォルトの名無しさん :01/08/29 22:04 ID:eQiT7HbI
-  BadAccessってさ、なんでif文を切ってるの? 
 コンパイルした時にダイナミックステップが多くなるじゃん。
 caseにしろよ。その方が高速化するぞ。
 
 
- 930 :デフォルトの名無しさん :01/08/29 22:38 ID:6wtO5bLA
-  >>929 
 文字列比較にcase?
 
 
231KB
新着レスの表示
スレッドリストへ戻る 全部 前100 次100 最新50
0ch BBS 2004-10-30