Personal tools
You are here: Home ブログ 井上 synergy にある典型的なバグ(とパッチ)
« July 2010 »
Su Mo Tu We Th Fr Sa
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Recent comments
Re:blogのコメントスパムが多すぎる inoue 2010-07-22
Re:マルチスケジューラv5.1.4をリリース - inspired by salesforceのchatter - inoue 2010-06-09
Re:マルチスケジューラv5.1.4をリリース - inspired by salesforceのchatter - hamabe 2010-06-08
Re:雑誌連載「Emacsのトラノマキ」の原稿(part4)公開 tune 2010-05-27
Re:雑誌連載「Emacsのトラノマキ」の原稿(part4)公開 tune 2010-05-27
Re:Emacs23.2が更に1ビット稼いだ秘密 inoue 2010-05-14
Re:Emacs23.2が更に1ビット稼いだ秘密 ef 2010-05-13
Re:TestLinkのUI考察 ef 2010-04-11
Re:「パーフェクトJava」輪講向け講演資料 kawagoe 2010-04-05
Re:grepに数多くのバグ? matsuyama 2010-03-25
Re:バベル Anonymous User 2010-03-24
Re:「パーフェクトJava」輪講向け講演資料 Asaga 2010-03-18
Categories
カテゴリなし
 
Document Actions

synergy にある典型的なバグ(とパッチ)

前から synergy を使っていますが、synergyのプロセスが時々落ちます。落ちるタイミングはコピー&ペーストのコピーのタイミングです。コピーした時に100%落ちるわけではありませんが、落ちる時はコピーした時です。

誰かが修正するだろうと他力本願でしたが、一向に修正版がリリースされる気配もないので、自分で修正しようとソースを見始めました。

と勢い込んだのですが、コールスタックに現れる関数を検索していたら、あっさりとパッチが見つかりました。

修正版がリリースされないことと、コピー&ペーストまわりのバグということで、当初、2バイト文字関係のバグを疑っていました(英語環境で起きないバグなら、なかなか修正版がリリースされないことの説明がつくので)。

実際は環境依存のないバグでした。修正版がリリースされないのは、そもそも synergy の開発が停止中だからのようです。

バグはまさに典型的なバグです。コレクションをなめるループの中で、コレクションの要素を削除してしまうバグです。STLでのわかりやすい説明ページを参考のためにリンクしておきます。

破壊的な処理を書いている限り、この手のバグは言語を問わず起きます。

理想主義者は破壊的な操作が悪だと言いますが、現場では必要悪です。JavaならConcurrentModificationException例外が起きるので、C/C++より相当マシです。ConcurrentModificationException例外は、世界が少し平和になるささやかな工夫のひとつです。

The URL to Trackback this entry is:
http://dev.ariel-networks.com/Members/inoue/synergy-bug/tbping

Re:synergy にある典型的なバグ(とパッチ)

Posted by inoue at 2010-01-28 22:01
今回の問題は map なのでリンク先としては以下の方が適切かもしれません。

http://www.sun-inet.or.jp/~yaneurao/intensive/cppmaniax/chap0004.html
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
This helps us prevent automated spamming.
Captcha Image


Copyright(C) 2001 - 2006 Ariel Networks, Inc. All rights reserved.