ZASAE B@! フリートーク掲示板

ようこそ! ZASAE B@!
フリートーク 掲示板 へっ!    うわっ!

こちらは、BlockFighterやマスク狂時代battleのHAYAの掲示板です。話題やメンバーは限定していません。どなた様もお気軽にさぁどうぞ〜!(※跡地です。閲覧のみ)

Post ID:1914

Thread 0 は主にメインイベントループ処理用のTSThreadです・・

名前:うに
やっぱり秒殺です・・
2回目の英文のダイアログでOKクリックした直後にダメです。
CarbonでMacOS8.xでは動くのにOSXではだめ・・というのはよくある話です。OSXはある意味、メモリアクセスには敏感です。たとえばハンドルをロックしないで直にメモリ参照とかしちゃうとMacOS8.xではタイミングによっては大丈夫だったりしますがOSXではクラッシュとか・・

当方も趣味でフリーソフト作ってる程度の知識なので、あまり当てにはなりませんが、十中八九メモリリークです。

クラッシュログです。
Date/Time: 2003-02-15 19:44:07 +0900
OS Version: 10.2.4 (Build 6I32)
Host: Macintosh.local.
Command: BlockFighter X (test)
PID: 413
Exception: EXC_BAD_ACCESS (0x0001)
Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000000

Thread 0 Crashed:
#0 0x00722184 in 0x722184
#1 0x007203b8 in 0x7203b8
#2 0x0027f8f8 in
#3 0x0027e260 in
#4 0x0027ba5c in
#5 0x004d5fa0 in 0x4d5fa0
#6 0x00465584 in 0x465584
#7 0x004656e4 in 0x4656e4
#8 0x004619d0 in 0x4619d0
#9 0x00370a88 in 0x370a88
#10 0x902790e8 in CCFM_LaunchApplication
#11 0x0000362c in main
#12 0x0000329c in _start
#13 0x0000311c in start
以下略

Thread 0 のスタック?状況です。
mach_msg_trap
mach_msg
__CFRunLoopRun
CFRunLoopRunSpecific
RunCurrentEventLoopInMode
GetNextEventMatchingMask
WNEInternal(↑ここから上はOS内部の呼び出し)
WaitNextEvent(↓ToolBoxAPI)
ModalDialog
RunStandardAlert
StandardAlert
0x46d718
0x46d834
0x464f9c
0x4652f4
0x4656e4
0x4619d0
0x370a88
CCFM_LaunchApplication(←CFMはこのアプリで起動)
main
_start
start

メインストリームの初っ端でいっちゃってるんで、デバッカでトレースしたらすぐわかるかも・・

子記事

  • Post ID:1915 お住まい:東京都

    Re:Thread 0 は主にメインイベントループ処理用のTSThreadです・・

    名前:HAYA
    こんばんは、うにさん。

    また詳しく教えてくださいましてありがとうございます。

    > CarbonでMacOS8.xでは動くのにOSXではだめ・・というのはよくある話です。OSXはある意味、メモリアクセスには敏感です。たとえばハンドルをロックしないで直にメモリ参照とかしちゃうとMacOS8.xではタイミングによっては大丈夫だったりしますがOSXではクラッシュとか・・

     OS8.xでは動くのにOSXではだめ…は凄く参考になりました。今まで、RealBasicがOS X用にコンパイルしているんだから大丈夫なはずだよなぁと思っていました。コンパイル中にエラーもでませんので…。それ故にRealBasicではもう改善し得ないのではないかと望みを絶たれた気分でした。『OS X上で』デバッグしてもいきなりクラッシュして原因がわからないと思い込んでいる自分に気付きました…。
     しかしよく考えれば、『OS X上で』デバッグすれば、リアルタイムに動いているOS Xのエラーが出る可能性もあるわけで、対処できるかもしれないと望みが出てきました。気付けばそんなこと当たり前ですが、そういう考えに至るまでなかなか大変であったり(笑)。

    あくまでもBasicで作っているので、ハンドルという概念や、クラッシュログもほとんどわからないのですが、手がかりにはなります。色々推測しながら直していきたいと思います。
    …しかし、OS Xを手に入れないとお話にならないですね。う〜ん、どうしよう。

    今まで他にもメールなどでアドバイスをくださった方がいるのですが、段々話が繋がってきました。(アドバイスありがとうございます)

    本当に、ご協力ありがとうございます。出来ればまた機会がありましたら、ご教授ください。m(_ _)m

    おまけ一言

    ありがとう!

    メールをくださっている方、ありがとうございます。返事は必ずします。もう少しお待ち下さい。