◀Unicode版開発トップへ
2140
C++アウトライン解析でスタック破壊
2141
Re:C++アウトライン解析でスタック破壊
2142
Re2:C++アウトライン解析でスタック破壊
2143
Re:C++アウトライン解析でスタック破壊
[2140]
C++アウトライン解析でスタック破壊
LR4
2014年03月10日 15:07
UNICODE版rev3647をDebug_Unicodeでビルドしたsakura.exeで、
ANSI版のほうのrev3648に含まれるCEditView_Command.cppを開いて
アウトライン解析ダイアログを出す操作をしたところ、
以下のメッセージが出てエラー停止しました。
確認環境はWin7(32bit版), VS2005です。
Release_Unicodeでは一見、何事も無く動作しているように見えますが、
実は内部メモリは破壊されているのではないかと不安を感じます。
大丈夫でしょうか?ご確認お願いします。
---------------------------
Microsoft Visual C++ Debug Library
---------------------------
Debug Error!
Program: ...
Module: (省略)\trunk2\sakura\Debug_Unicode\sakura.exe
File: (省略)\trunk2\sakura_core\types\ctype_cpp.cpp
Line: 1198
Run-Time Check Failure #2 - Stack around the variable 'szTemplateName' was corrupted.
(Press Retry to debug the application)
---------------------------
中止(A) 再試行(R) 無視(I)
---------------------------
追記:
rev2134(v2.0.5.0相当)に戻して同じことを試してみましたが、
その場合は特に問題なく動作しました。
[2141]
Re:C++アウトライン解析でスタック破壊
もか
2014年03月10日 20:04
現象確認しました。
wcsncat(dest,src,n)の使い方が間違っていました。
wcsncpyと違って、n+1文字書き込むのでバッファはwcslen(dest)+n+1が必要でした。
あと、Len++していない場所がありました。
https://
sourcefo
rge.
net/
p/
sakura-
editor/
patchuni
code/
786/
[2142]
Re2:C++アウトライン解析でスタック破壊
LR4
2014年03月10日 20:31
ご対応ありがとうございます。
>
https://
sourcefo
rge.
net/
p/
sakura-
editor/
patchuni
code/
786/
パッチ適用し、エラー停止せずにアウトライン表示できることを確認しました。
[2143]
Re:C++アウトライン解析でスタック破壊
suzz
2014年03月11日 23:01
別件ですが、C/C++ アウトライン解析で一件不具合を見つけています。
紅桜側では暫定改修を行ったのですが、本家のほうで修正いただけると助かります。
https://
bitbucke
t.
org/
suzzsegv
/
benizaku
ra/
commits/
18497ccd
d5f2aca4
09dd1265
9537255d
c2500fc
0