[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[orca-dev:00199] Re: bug patch of MONPE
- To: orca-dev@xxxxxxxxxxxxxx
- Subject: [orca-dev:00199] Re: bug patch of MONPE
- From: Shimizu Koji <shimizu@xxxxxxxxx>
- Date: Fri, 04 Oct 2002 10:05:36 +0900
- Cc: Tomohiro 'Tomo-p' KATO <tomop@xxxxxxxxxxxxx>
NaCl の清水です。
MONPE 0.3.8 と 0.4.2 の両方にバグが見つかりました。
加藤さん (tomop@xxxxxxxxxxxxx) に報告して頂きました。
大変助かりました。ありがとうございます。
報告して頂いたバグを修正し、0.3.9、0.4.3 をリリースします。
それでは。
+-----
| Shimizu Koji(21) , shimizu@xxxxxxxxx
At Fri, 04 Oct 2002 02:29:56 +0900,
Tomohiro 'Tomo-p' KATO wrote:
>
> こんばんは、加藤です。
>
> monpe-0.3.8 にバグを発見しましたのでお知らせします。
>
> ○現象
>
> standard と Embed の2回同じものが登録され重複 warning が発生し、
> 該当オブジェクトを使った form をオープンすると SEGV 発生。
>
> ○発生の流れ
>
> (1)
> オブジェクト登録の際、Embed - (Image / Text) へのポインタを
> standard objects と同じ名前の変数(typo と思われる)に格納している
> ため、standard - (Image / Text) を指している変数を上書きしてしまう。
>
> (2)
> Embed 側ではポインタ変数を用意しているが使わず直接ポインタを渡し
> ているため、Embed の登録は問題なく成功する。
>
> (3)
> standard の登録のとき、Image/Text が Embed のもので上書きされて
> いるため warning が発生する。
>
> (4)
> これらの正しく登録できていないオブジェクトを使ったデータを読み
> 込む際に SEGV で落ちる。
>
>
> 以下に patch をつけます。
>
> ----------------------------------------------------------------------------------
> diff -urN monpe-0.3.8.orig/objects/Embed/eimage.c monpe-0.3.8/objects/Embed/eimage.c
> --- monpe-0.3.8.orig/objects/Embed/eimage.c Thu Sep 19 13:26:31 2002
> +++ monpe-0.3.8/objects/Embed/eimage.c Fri Oct 4 02:01:25 2002
> @@ -153,7 +153,7 @@
> &image_type_ops /* ops */
> };
>
> -ObjectType *_image_type = (ObjectType *) &eimage_type;
> +ObjectType *_eimage_type = (ObjectType *) &eimage_type;
>
> static ObjectOps image_ops = {
> (DestroyFunc) image_destroy,
> diff -urN monpe-0.3.8.orig/objects/Embed/etextobj.c monpe-0.3.8/objects/Embed/etextobj.c
> --- monpe-0.3.8.orig/objects/Embed/etextobj.c Thu Sep 19 13:26:31 2002
> +++ monpe-0.3.8/objects/Embed/etextobj.c Fri Oct 4 02:02:43 2002
> @@ -120,7 +120,7 @@
> &textobj_type_ops /* ops */
> };
>
> -ObjectType *_textobj_type = (ObjectType *) &etextobj_type;
> +ObjectType *_etextobj_type = (ObjectType *) &etextobj_type;
>
> static ObjectOps textobj_ops = {
> (DestroyFunc) textobj_destroy,
> ----------------------------------------------------------------------------------
>
> -- ________________________________
> _/_/ Tomohiro "Tomo-p" KATO
> _/_/ e-mail : tomop@xxxxxxxxxxxxx
> _/_/ http://www.teamgedoh.net/
>