[▲前のスレッド]

2014/3/10 (月) 15:07:57 LR4  
Mozilla/5.0 (Windows NT 6.1; rv:27.0) Gecko/20100101 Firefox/27.0
[2140] C++アウトライン解析でスタック破壊
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相当)に戻して同じことを試してみましたが、
その場合は特に問題なく動作しました。

2014/3/10 (月) 20:04:17 もか  
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
[2141] Re:C++アウトライン解析でスタック破壊
現象確認しました。

wcsncat(dest,src,n)の使い方が間違っていました。
wcsncpyと違って、n+1文字書き込むのでバッファはwcslen(dest)+n+1が必要でした。
あと、Len++していない場所がありました。
https://sourceforge.net/p/sakura-editor/patchunicode/786/

2014/3/10 (月) 20:31:42 LR4  
Mozilla/5.0 (Windows NT 6.1; rv:27.0) Gecko/20100101 Firefox/27.0
[2142] Re2:C++アウトライン解析でスタック破壊
ご対応ありがとうございます。
> https://sourceforge.net/p/sakura-editor/patchunicode/786/
パッチ適用し、エラー停止せずにアウトライン表示できることを確認しました。

2014/3/11 (火) 23:01:27 suzz  
Mozilla/5.0 (Windows NT 6.3; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
[2143] Re:C++アウトライン解析でスタック破壊
別件ですが、C/C++ アウトライン解析で一件不具合を見つけています。
紅桜側では暫定改修を行ったのですが、本家のほうで修正いただけると助かります。

https://bitbucket.org/suzzsegv/benizakura/commits/18497ccdd5f2aca409dd12659537255dc2500fc
0

[▼次のスレッド]
INCM/CMT
Cyclamen v3.81
[ut:0.010][st:0.000]