おちゅ~しゃはGTK+ベースの2chブラウザです。
基本部分はC/C++言語でマルチスレッドな実装なので、それなりに高速に動作します。
機能追加などのご要望にも可能な限りお応えしていきたいと思います。
また落ちないことを重要視しております。
version 0.5 (2004-02-29)
- ●に対応しますた。
- libghttpをツリーに取り込み、libghttp由来の不具合を修正し足りない機能
を追加した。
- スレ一覧の表示速度を改善した。
- 一部の板に書き込みができない問題を解決した。
- 東アジアnews+の名無しさんがそれらしく表示されるようにした。
- 書き込みエディタでEscapeキーを無視できるようにした。副作用が不明なの
でデフォルトでは以前と同じ振る舞い。ochusha-gtkrcなどで設定できる。
- 画像プレヴューでダウンロード前に表示されるアイコンを変更した。
- レス数が1024を越えるようなスレの表示時におちゅ〜しゃが落ちる問題を解
決した。
- マイフォルダから仮想板が削除できない問題を解決した。
- スレ一覧におけるスレのクリック時に、該当スレが表示中かつ新着レスが存
在する場合には該当スレを更新するようにした。
2004-02-29 fuyu <fuyu@users.sourceforge.jp>
* バージョン0.5
* 画像プレヴューでダウンロード前の一時的な画像として表示するアイコ
ンを変更した。
2004-02-28 fuyu <fuyu@users.sourceforge.jp>
* レスのDATファイル内での位置やレスのGtkTextBuffer内での位置など各
種offsetをキャッシュしているバッファの拡大時のサイズ計算を間違え
ていたため、レス数が1024を越えるようなスレを表示しようとした時に
ヒープを致命的に壊す問題を解決した。
* スレのリセット時(DATキャッシュの消去時)に、●を使って読み込み
済フラグを消去するようにした。
* 東アジアnews+の名無しさんがそれらしく表示されるようにした。
* マイフォルダから仮想板が削除できない問題を解決した。「お気に入り」
と「全既得スレ」を削除できないようにするために用いていた条件がざ
る過ぎた。
* スレ一覧におけるスレのクリック時に、該当スレが表示中かつ新着レス
が存在する場合には該当スレを更新するようにした。
* 書き込みエディタでEscapeキーを無視できるようにした。副作用がない
とも限らないので、デフォルトでは以前と同じ振る舞いになっている。
ochusha-gtkrcなどで設定できる。
2004-02-26 fuyu <fuyu@users.sourceforge.jp>
* DAT落ちスレを●を使って読めるようにした。
2004-02-20 fuyu <fuyu@users.sourceforge.jp>
* libmodifiedghttp内のgethostbyname()呼び出しを、存在する環境では
getaddrinfo()呼び出しに置き換え、ロックしないように変更した。
2004-02-17 fuyu <fuyu@users.sourceforge.jp>
* libmodifiedghttp内で呼ばれているgethostbyname()は普通非スレッド
セーフなのでmutexで囲むようにした。いずれgetaddrinfo()や
gethostbyname_r()などを使うように書き換える予定。
* 一部の板に書き込みができない問題を解決した。
2004-02-10 fuyu <fuyu@users.sourceforge.jp>
* メニューバーの英語版メニューが省略しすぎで意味不明なのを修正した。
2004-02-04 fuyu <fuyu@users.sourceforge.jp>
* 素のGtkListStoreを使うのをやめて、おちゅ〜しゃ用に最適化した
ModListStoreを使うようにした。これでスレ一覧表示が大幅に高速化で
きたつもり。
2004-02-02 fuyu <fuyu@users.sourceforge.jp>
* libmodifiedghttpのghttp_requestオブジェクトの状態(proc)が
ghttp_proc_response_hdrの場合、asyncモードでghttp_process()を実
行しても、HTTPのレスポンスヘッダを読み込んだところで終了してしま
う。この時実際には、ソケットから読み込めるデータを全て読み込んで
しまっているため、その時点で全て読み込み終えてしまうほどレスポン
スが短かった場合には、レスポンスボディを読み込むための
ghttp_process()を呼び出すタイミングを逸してしまうことが判明した。
なので、ghttp_requestオブジェクトの状態を調べ、
ghttp_proc_response_hdrの時にはghttp_process()を2度呼び出すよう
に変更した。
* asyncモード時にはlibmodifiedghttpで作るソケットにO_NONBLOCKフラ
グを指定するようにした。これにより、libmodifiedghttp内でブロック
することはほぼ無くなったはず。socketシステムコールなどでは依然と
してブロックし得る(?)がこれは、諦める。
* ochusha_async_buffer_terminate_all()で運が悪いとfinalize中
OchushaAsyncBufferのNULLクリアされたフィールドに触ってしまう問題
を解決した。
* タイムアウトのロジックが腐っていたのを修正した。
* ソースツリー外でのmakeが出来ない問題を修正した。(RequestID=3833)。
2004-01-31 fuyu <fuyu@users.sourceforge.jp>
* libghttpの不具合解消とhttpsサポートのために、名前を
libmodifiedghttpと変えてlibghttpをツリーに取り込んだ。
* 「Transfer-Encoding: chunked」時のasyncモードの振る
舞いをchunkedでない場合に合わせることで、asyncモードの不具合を解
消した。OpenSSLとの組合わせにより、httpsをサポートした。
* ●対応を始めますた。現在書き込み時にのみ意味あり。