GLS Developer's BBS
  新規投稿 ┃ ツリー表示 ┃ 一覧表示 ┃ トピック表示 ┃ 検索 ┃ 設定 ┃ ホーム  
2 / 17 ツリー ←次へ | 前へ→

TransTestでのページ違反 alt 04/7/18(日) 16:13
┗ Re:TransTestでのページ違反 L.Entis (開発者) 04/7/18(日) 22:59
 ┗ Re:TransTestでのページ違反 alt 04/7/18(日) 23:48

TransTestでのページ違反
 alt  - 04/7/18(日) 16:13 -

引用なし
パスワード
   初めまして。
最近GLSを使い始めたのですが、TransTestのソースコードをビルドして実行すると、
終了時にページアクセス例外が発生します。
デバッガで追ってみたところ、呼び出し履歴は以下のようになっていました。

    transtest.exe!eglDeleteImageBuffer(EGL_IMAGE_INFO * pImageInf=0x00e00090) 行 661 + 0x8    Asm
    transtest.exe!EGLImage::DeleteImage() 行 330 + 0xc    C++
>    transtest.exe!EGLImage::~EGLImage() 行 36    C++
    transtest.exe!`eh vector destructor iterator'(void * ptr=0x0057ae08, unsigned int size=0x0000000c, int count=0x00000003, void (void *)* pDtor=0x00473410) + 0x58    C++
    transtest.exe!$E2() + 0x31    C++
    transtest.exe!doexit(int code=0x00000000, int quick=0x00000000, int retcaller=0x00000000) 行 376    C
    transtest.exe!exit(int code=0x00000000) 行 303 + 0xd    C
    transtest.exe!WinMainCRTStartup() 行 267    C
    KERNEL32.DLL!77e61af6()

同梱されている TransTest.exeや、他のサンプルのソースでは問題ないので、
こちらの環境依存の問題かもしれませんが、よろしければ確認をお願いいたします。

OSはWindows2000、コンパイラはVS2003.NET、CPUはDuronを使用しています。
GLSのバージョンは3.05eです。
<Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; .NET CLR 1.0.3705; .NET CLR 1.1.4322)@q225069.ap.plala.or.jp>

Re:TransTestでのページ違反
 L.Entis (開発者)  - 04/7/18(日) 22:59 -

引用なし
パスワード
   はじめまして。L.Entis です。

> 最近GLSを使い始めたのですが、TransTestのソースコードをビルドして実行すると、
> 終了時にページアクセス例外が発生します。

あらら(汗)
調べてみましたら、TransTest のソースのほうに問題があるようでした。
ソースのほうは、こっそり上書きしてあります。(^^;

http://www.entis.gr.jp/gls/sample/bin/TransTest_src.lzh

どこを変えたかというと、ETransSprite::Release 関数を追加したことです。
static なオブジェクトの解放を glsCloseLibrary より先にやってませんでした。
(こういうのに自分で引っかかってしまうとは、アホタレっぷり炸裂 (^^;)
回避法としては glsCloseLibrary を呼び出さないようにしても問題は無いのですが、美しくないのでちゃんと解放コードを入れてあげました。
あと、initgls.dll を使う手もありますが。
とりあえず、そんな感じですので、試してみてくださ〜〜〜い。

#にしても、サンプルをいい加減、新機能を使ったものを 1、2 増やしたいところだけど…(汗)
<Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)@tokyo-fa3-216.kcom.ne.jp>

Re:TransTestでのページ違反
 alt  - 04/7/18(日) 23:48 -

引用なし
パスワード
   修正後のソースコードをビルドし、例外が発生しないことを確認しました。
素早い対応ありがとうございます。
<Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; .NET CLR 1.0.3705; .NET CLR 1.1.4322)@q225069.ap.plala.or.jp>

  新規投稿 ┃ ツリー表示 ┃ 一覧表示 ┃ トピック表示 ┃ 検索 ┃ 設定 ┃ ホーム  
2 / 17 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
9038 C-BOARD v3.02 is not Free?