◀ANSI版開発トップへ
  • 2652 バグ100連発(うそ)
    • 2657 Re: バグ100連発(うそ)
    • 2661 RE: バグ100連発(うそ)
  • [2652] バグ100連発(うそ) みく 2003年04月01日 18:55


    ・プリンタボタンのキャンセルでプリンタ不明になるバグ
    CPrint.cpp:77行目を削除するのでは駄目かな。

    ・つづり間違い?
    CLayoutMgr/CDocLineMgrの関数で
    GetFirstLinrStr
    GetNextLinrStr

    ・関数の型と戻り値が...
    CDocLineMgr.cpp:WriteFile()
    戻り値の型がintでreturnではFALSE,TRUE,-1の3種
    呼び出し側ではBOOLを期待しているので-1はどうする?
    (途中でキャンセルすると正常終了になる)

    関数の戻り値の型、returnでの値、呼び出し側での期待値がめちゃくちゃになっている関数がいくつかあります。
    CDlg系のGetDataも同様です。
    BOOLはreturnにTRUE,FALSE以外を書いてもビルド時に警告が出ないので、調べるのが大変そうです。
    • [2657] Re: バグ100連発(うそ) げんた 2003年04月02日 00:56

      >BOOLはreturnにTRUE,FALSE以外を書いてもビルド時に警告が出ない
      Windowsで定義されているものに文句をつけてもしょうがないが、BOOLがenumで定義してあれば警告が出なくてすんだのかな?
    • [2661] RE: バグ100連発(うそ) みく 2003年04月02日 18:47


      CDocLineMgr.cpp:725,906行目
      if( !::BlockingHook( NULL ) ){
      ※ return FALSE;
      } ^^^^^

      とするか、

      CEditDoc.cpp:846行目
      if( TRUE != m_cDocLineMgr.WriteFile( ...
      ^^^^^^^
      としないと駄目です。