貼り付けでクリップボード履歴に格納されNo.07698
K'zawa さん 13/01/29 11:48
 
こんにちは、K'zawaです。

エクスプローラやデスクトップでF2キーを押してファイル名変更状態にして、
文字列を貼り付けるたびに、それがクリップボード履歴に格納されて、同じ文字
列が履歴上位に並ぶ現象が発生します。
設定は、

自動保存 ON
秀丸エディタのみで履歴を取る OFF
同じ内容は無視 ON

です。

秀丸エディタ Version 8.30 Beta 19
Windows7 Home 32bit

[ ]
RE:07698 貼り付けでクリップボード履歴にNo.07699
秀丸担当 さん 13/01/29 14:46
 

確かにそうなっていることが確認できました。

まずコピーが実行されたと判断される理由としては、貼り付けなのに実際はコ
ピーされているからのようです。
例えば「\xxx」を貼り付けたとき、「\」が除去され「xxx」が貼り付けされるよ
うですが、このときクリップボードの内容を書き換えているようです。
それが、除去するべき文字がなくてもとにかく書き換えるようです。

「同じ内容は無視」をONにしていても無視されない原因としては、エクスプロー
ラがクリップボードの内容を書き換えるとき、終端NULL文字を1つ余計につけて
いるようです。
例えば、NULL文字を「\0」として表すとして、「a」という文字を貼り付けると、
「a\0」に書き換えられ、連続して張り付けると「a\0」「a\0\0」「a\0\0\0\0」
とどんどん内容が変わっていくので、同じ内容とは解釈されていませんでした。
実際に貼り付けするときは終端NULL文字までしか貼り付けされないので目には見
えないですが、内容が変わっていました。

秀丸エディタの対策として、終端のNULL文字までをチェックするだけに対策して
修正させていただきます。

[ ]
RE:07698 貼り付けでクリップボード履歴にNo.07700
みな さん 13/01/29 15:05
 
あー,その謎現象,私も確認しています。

K'zawa さんと異なる点は,
[秀丸エディタのみで履歴を取る] のチェックを外している事と,
具体的なバージョン番号は覚えていませんが,
少なくとも「Version 8.30 Beta 19」よりも随分前のバージョン
(多分,8.** の ** の部分が幾つか前)の時から気付いている事と,
OS が「Windows XP Home Edition Service Pack 3」である事です。

不可思議ではあっても,致命的に不自由だったりはしないので,
わざわざ通報まではせず放置していました…。


この謎現象と関係有るのかわかりませんが,
最近かなり不自由に感じている謎現象(多分バグ)が有りまして,
秀丸エディタのツールバーから [ファイル] メニューを開こうとしたり
常駐秀丸アイコンを左クリックしたりすると,
PC 画面の真ん中に "buffer overrun at widetext::free()" という
エラーメッセージの小さな確認ウィンドウが出てきて,
前記の操作を完了できない事が有るのです。

「最近使ったファイル/フォルダ」の履歴の中に,
正しく処理できない文字列が含まれていると発生するらしいと推測しているのですが,
その具体的で正確な再現条件が不明なので,今迄通報は見合わせていました。
本現象に関しては具体的なバージョン番号がわかっています。
「Version 8.30 Beta 12」迄は発生せず,
「Version 8.30 Beta 13」以降で発生します。
本現象が発生すると事実上秀丸エディタがマトモに使えなくなるので,
現在では
[その他]-[動作環境]-[プライバシー]-[各種ヒストリの消去]-[ファイル/フォルダ] を
[消去] 操作する事で対症療法としていますが,
この解消方法に気付く迄は,
泣く泣くバージョンアップを「Version 8.30 Beta 12」で止めていました。

[ ]
RE:07699 貼り付けでクリップボード履歴にNo.07701
K'zawa さん 13/01/29 15:39
 
秀丸担当さん、こんにちは。
K'zawaです。

調査ありがとうございました。
対策よろしくお願いします。

[ ]
RE:07700 貼り付けでクリップボード履歴にNo.07702
秀丸担当 さん 13/01/29 16:20
 

>
>この謎現象と関係有るのかわかりませんが,
>最近かなり不自由に感じている謎現象(多分バグ)が有りまして,
>秀丸エディタのツールバーから [ファイル] メニューを開こうとしたり
>常駐秀丸アイコンを左クリックしたりすると,
>PC 画面の真ん中に "buffer overrun at widetext::free()" という
>エラーメッセージの小さな確認ウィンドウが出てきて,
>前記の操作を完了できない事が有るのです。

バグ情報ありがとうございます。
確かにV8.30β13で関連する修正がありました。
ファイルヒストリが長い場合に遅くなることの改善がありました。
その修正で、フルパスで128文字くらいで省略されずにファイル名に「&」が幾つ
か含まれるようなファイルの場合そのエラーが出てしまうことがわかりました。
早いうちに修正させていただきます。

[ ]
RE:07702 "buffer overrun at widetext::fNo.07709
みな さん 13/01/29 18:47
 
デバッグ有り難う御座います。
先程,V8.30β20 をダウンロードしました。
これで,バグ症状回避の為の対症療法操作の面倒も無くなりましたし,
また従来の様に安心して,秀丸エディタを最新版に維持し続けられます。

[ ]
RE:07700 誤記訂正No.07710
みな さん 13/01/29 19:41
 
ス,スミマセン。
細かい事ですが,――
  (誤)ツールバーから [ファイル] メニュー → (正)メニューバーから [ファイ
ル] メニュー
――でした。
まぁ,バグ通報するからには,杓子定規でも記述は正確であるべきだと思いまして…。

[ ]