清水@住友林業です。
Satoru Takabayashi <ccsatoru@xxxxxxxxxxxxxxxxxx> さんは
Mon, 9 Mar 1998 06:16:58 +0900 に書きました ;
> namazu-112-proto-7 を作りました。そろそろ v1.1.2 として正式にリリー
> スできる段階に近づいてきたと思います。
namazu-112-proto-7 の namamzu に一つ、バグがありました。
まず、現象から。
%namazu -C
namazu configurations
configuration file: h:/usr/local/namazu/lib/namazu.conf
* DEFAULT_DIR : h:/usr/local/namazu/index
* BASE_URL :
* URL_REPLACE_FROM :
* URL_REPLACE_TO :
* WAKATI_TMP_DIR : h:/temp
* Wakati : kakasi
* LOGGING : ON
* LANG : JAPANESE
と出る環境で、コマンドラインの INDEX_DIR なしで namazu を実行します。
%namazu "snmp"
検索結果
参考ヒット数:
検索式にマッチする項目はありませんでした。
と表示されます。参考ヒット数の行は、
参考ヒット数: [ snmp: 11 ]
と表示されるのが正解なのですが、何も表示されていません。
で、コマンドラインから INDEX_DIR を与えてみます。
% namazu h:/usr/local/namazu/index "snmp"
検索結果
参考ヒット数: [ snmp: 11 ]
検索式にマッチする 11 個の項目が見つかりました。
1. A Simple Network Management Protocol (SNMP) (score: 132)
[以下省略]
とまともに表示されます。
原因は、コマンドラインオプションで INDEX_DIR が与えられなかった場合、
namazu.c の main() で
DbNumber = 0
になったまま searchmain() まで処理が進んでしまうことのようです。
この場合、searchmain() では、
DbNumber = 1
を期待して動作しているように見えたので、namazu.c の main() の
345 行目の次に
DbNumber = 1;
を挿入したら、まともに動くようになりました。
なお、この修正は、添付の OS/2 用の patch にも反映させてあります。
search.c の seachmain() の 357-359 行目の
for (i = 0; i < DbNumber; i++) {
tmp[i] = search_and_print_reference(tmp[i], keystring, i);
}
を、
for (i = 0; i <= DbNumber; i++) {
tmp[i] = search_and_print_reference(tmp[i], keystring, i);
}
にする修正方法も考えたのですが、search.c の lockfilecheck() を見ると
DbNumber の値を修正するべきだと理解しました。
# で、いいんですよね?
> proto-6 からの変更点は
>
> v1.1.2-proto-7
> [3/8/98]
>
> * バイトオーダの違いを吸収するようにしました
> NMZ.le がれば little-endian なインデックス
> NMZ.be がれば big-endian なインデックスと判断する
> * インデックスのバイトオーダを変換するツールを作りました (rvnmz.pl)
> * 多分、 OS/2 でも動くと思う
また、mknmz の方は動いてますが、namazu の方が
・chdir() → _chdir2
・getcwd() → _getcwd2()
の対応がされてなかったので、namazu.h 以下を修正しました。
最後に patch を付けます。
> 例によって
>
> <URL:http://saturn.aichi-u.ac.jp/%7Eccsatoru/Namazu/proto/>
>
> に置いておきますので、どうぞお試しください。 Win32, OS/2 用の
> Makefile を作って頂けると助かります > 広瀬さん、清水さん。
>
これも 最後に付けます。
(MIME Multipart で 2 ファイルを添付することになります。)
ではでは。
end
--
住友林業株式会社 情報システム部 清水 和佳
TEL: +81-3-5322-6672 FAX: +81-3-5322-6658 Niftyserve: XLW01034
e-mail: <kshimz@xxxxxxxxx>
Attachment:
PATCH.OS2
Description: Binary data
Attachment:
MAKEFILE.OS2
Description: Binary data