Ticket #33695

MTFont2Bmp::_writeGlyphToBmpBuf でエラー発生

오픈 날짜: 2014-04-20 22:30 마지막 업데이트: 2014-04-20 23:57

Reporter:
소유자:
Type:
Status:
Closed
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None

Details

フォーラムにてエラー発生の報告があった。

it doesn't work
https://sourceforge.jp/projects/miditrail/forums/23148/34137/

Windows 8 にて、MIDIファイルを開くときに下記エラーが発生するとのこと。

Program error
FUNC:MTFont2Bmp::_writeGlyphToBmpBuf
LINE:450
INFO:00000025 00000026

Ticket History (3/5 Histories)

2014-04-20 22:30 Updated by: yknk
  • New Ticket "MTFont2Bmp::_writeGlyphToBmpBuf でエラーが発生" created
2014-04-20 22:32 Updated by: yknk
댓글 올리기

原因

Windows 8 (64bit) 日本語版で動作テストを実施したが、再現しなかった。

当該エラーは、文字列をビットマップ画像に変換する関数で発生している。

GetGlyphOutlineで得た1文字のビットマップを、文字列として横に並べるため バッファに書き込む処理で、書き込む位置がバッファの外側にはみ出すことを 検出したとき、当該エラーが発生する。

このエラーが発生は、GetGlyphOutlineが返した情報に不整合があることを意味する。

前述の通り、手元の環境では再現しないため、はみ出しを検出したときは、 エラーとせず単純にスキップする修正をして、ユーザに個別リリースした。 ユーザからは正常に動作した旨、回答があった。

2014-04-20 22:33 Updated by: yknk
댓글 올리기

対策

MTFont2Bmp::_WriteGlyphToBmpBuf

文字のビットマップをバッファにコピーする際、 コピー先がバッファの領域外であることを検出したときは、 エラーとせず単純にスキップする。

本来なら警告ログを残したいところだが、 その仕組みがないのであきらめる。

2014-04-20 22:44 Updated by: yknk
  • Summary Updated
2014-04-20 23:57 Updated by: yknk
  • Resolution Update from None to Fixed
  • Status Update from Open to Closed
  • Ticket Close date is changed to 2014-04-20 23:57

Attachment File List

No attachments

Edit

Please login to add comment to this ticket » Login