[#9437] ruby 1.1c4 released — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

17 messages 1998/09/03

[#9570] ruby-gtk-0.11 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

16 messages 1998/09/16

[#9573] filter — gotoken@... (GOTO Kentaro)

ごとけんです

34 messages 1998/09/16
[#9575] Re: filter — Shin-ichro Hara <sinara@...> 1998/09/17

原です。

[#9577] Re: filter — Shin-ichro Hara <sinara@...> 1998/09/17

原です。

[#9613] can't clone Fixnum — Kikutani Makoto <kikutani@...>

前田さんのruby-jedパッチをJed 0.98.7+J0.5.3に無理やりあてて

27 messages 1998/09/19
[#9622] Re: can't clone Fixnum — shugo@... (MAEDA Shugo) 1998/09/21

前田です。

[#9633] Re: can't clone Fixnum — Kikutani Makoto <kikutani@...> 1998/09/22

Mon, Sep 21, 1998 at 06:44:30PM +0900 において

[#9635] Re: can't clone Fixnum — matz@... (Yukihiro Matsumoto) 1998/09/22

まつもと ゆきひろです

[#9637] Re: can't clone Fixnum — Kikutani Makoto <kikutani@...> 1998/09/22

回答どうもです。

[#9640] Re: can't clone Fixnum — matz@... (Yukihiro Matsumoto) 1998/09/22

まつもと ゆきひろです

[#9647] Re: can't clone Fixnum — Kikutani Makoto <kikutani@...> 1998/09/22

Tue, Sep 22, 1998 at 01:07:22PM +0900 において

[#9650] Re: can't clone Fixnum — matz@... (Yukihiro Matsumoto) 1998/09/22

まつもと ゆきひろです

[#9626] nif.rb (ver0.14) — Wakou Aoyama <wakou@...>

青山です。

35 messages 1998/09/21
[#9628] Re: nif.rb (ver0.14) — WATANABE Tetsuya <tetsu@...> 1998/09/22

渡辺哲也です。

[#9638] Re: nif.rb (ver0.14) — SHUDOH Kazuyuki <shudoh@...> 1998/09/22

渡辺哲也さん wrote:

[#9642] Re: nif.rb (ver0.14) — Kikutani Makoto <kikutani@...> 1998/09/22

Tue, Sep 22, 1998 at 12:58:23PM +0900 において

[#9703] Re: nif.rb (ver0.14) — hisanori@... 1998/09/24

松尾です。

[#9704] Re: nif.rb (ver0.14) — matz@... (Yukihiro Matsumoto) 1998/09/24

まつもと ゆきひろです

[#9705] Re: nif.rb (ver0.14) — hisanori@... 1998/09/24

松尾です。こんばんは。

[#9706] Re: nif.rb (ver0.14) — matz@... (Yukihiro Matsumoto) 1998/09/24

まつもと ゆきひろです

[#9723] Re: nif.rb (ver0.14) — hisanori@... 1998/09/25

松尾です。こんにちは。

[#9724] pstore.rb(Re: Re: nif.rb (ver0.14)) — matz@... (Yukihiro Matsumoto) 1998/09/25

まつもと ゆきひろです

[#9670] how to create a instance dinamically using String class. — Masato Taruishi <taru@...>

18 messages 1998/09/22
[#9671] Re: how to create a instance dinamically using String class. — ttate@... 1998/09/22

立石です。

[#9677] Re: how to create a instance dinamically using String class. — keiju@... (Keiju ISHITSUKA) 1998/09/23

けいじゅ@日本ラショナルソフトウェアです.

[#9678] Re: how to create a instance dinamically using String class. — Masato Taruishi <taru@...> 1998/09/23

[#9702] [HAMATTA!] != — Shin-ichro Hara <sinara@...>

原です。

16 messages 1998/09/24

[#9770] ruby-jed SEGV — Kikutani Makoto <kikutani@...>

きくたにです。

16 messages 1998/09/29

[ruby-list:9481] Re: gtk

From: "D.Kanda" <MAP2303@...>
Date: 1998-09-07 06:16:53 UTC
List: ruby-list #9481
  かんだです。

> まつもと ゆきひろです
> 
> In message "[ruby-list:9475] gtk"
>     on 98/09/07, "D.Kanda" <MAP2303@mapletown.net> writes:
> 
> |  かんだです。
> |  以前流した ruby-gtk パッチの debug と追加です。
> |  -c を付け忘れたみたいで、位置が分からないかもしれません。
> 
> えーと,すいません.ed inputは辛すぎるので-cか-uでもう一度お願
> いできませんか? 私へ直接で構いませんので.

  わかりました。
  patch 元は、0.10 か 0.10+旧patch のどちらがいいでしょう? 

> |  signal_setup_args() で size_request の部分を GtkRequisition のコピーでな
> |く、そのまま Data_Wrap_Struct しています。これは以下の理由です。
> |  何か間違ってないか確認下さい。
> 
> そのようにする必要性については分かりました.で,問題になるの
> はGtkRequisitionの寿命ですね.ソースを見る限り渡される
> GtkRequisionはオブジェクトにembedされたものか,auto変数のポ
> インタのようです.後者はハンドラ修了後にそのオブジェクトに触
> れたら即アウトですし,前者でもまずい状況はありえますね.
> 
> これに対して
> 
>         そういうものだ,ハンドラの外に持ち出すな
> 
> というのは確かにそうなんですが,それしきのことでシステム全体
> を落とせるというのもしゃくな気がします.どうしたもんでしょう
> ねえ.perlとかpythonとかどうしてるのかな?

  他の言語は知らないですが、とりあえず思いつく解決策は、signal_set_args()
では従来通りコピーするけれど、元のオブジェクトも覚えておいて、ハンドラから
返ってきたら整合をとるというものです。

  gtk.c の 1210行あたり、rb_apply() の後に、

    if (strcmp(rb_id2name(id), "size_request")) {
      GtkRequisition* r0 = (GtkRequisition*)GTK_VALUE_POINTER(params[0]); 
      GtkRequisition* r1 = get_grequisition(ary_entry(args, ...));
      r0.width  = r1.width;
      r0.height = r0.height;
    }	

  とか入れれば一応はできそうです。
  (r1 を得るための ary_entry の idx はぱっと見ただけでは分からないのでパス)
  (rb_apply は NIL_P(proc) で分かれているけど、どっちに入れるのかもパス)

  ただ、美しくないですね。もっと統一的に、signal_sync_args とかいう関数で
面倒みたいかな。これでできそうなら僕がやってきましょうか? 今週末になると
思いますが。

  あと、Data_Wrap_Struct用に nonfree() なんて宣言してますけれど、mark の指
定みたいに「処理しない」という指定ができるようにはできませんか?  free のと
ころに 0 を指定すると free() が呼ばれますよね。-1とかどうかな。

In This Thread