Ticket #40296

フォルダ比較で「バイナリファイルの表示」をOFFにすると左側/右側のみファイルが表示されない

Open Date: 2020-03-31 13:57 Last Update: 2020-04-29 20:50

Reporter:
(Anonymous)
Owner:
(None)
Type:
Status:
Closed
Component:
(None)
MileStone:
(None)
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None

Details

Version 2.16.4.9 Japanese + jp-9 x86 を使用しています。

フォルダを2つ指定して比較を実行、フォルダ比較ウィンドウを表示し 「バイナリファイルの表示」をOFFにすると、 サブフォルダ内の左側のみ/右側のみのテキストファイルが一覧に表示されなくなることがあります。

厳密な再現条件は特定できていませんが、

  • サブフォルダの階層が1階層のときにはこの問題が生じることはないようです。
  • サブフォルダの階層が2階層でも、うちフォルダ名が若い順で最初に左側のみ/右側のみのサブフォルダ/ファイルを検出したフォルダについては、左側のみ/右側のみファイルも正しく表示されていいるようです。 (それ以降のフォルダ、および比較ルートディレクトリ直下のファイルについては左側のみ/右側のみファイルが表示されないようです)
  • 比較対象ファイルがすべてテキストファイルの場合は、左側のみ/右側のみテキストファイルも正しく表示されているようです。
  • 「バイナリファイルの表示」をONに戻すと、左側のみ/右側のみテキストファイルも正しく表示されます。

具体的に問題が発生するパターンですが、VisualStudio(2010~2013)でWindowsFormsのアプリケーション開発を行っている際のプロジェクトディレクトリ同士を比較した際に、

  • bin/debug/log ディレクトリについてはサブディレクトリ含め左側のみ/右側のみのテキストファイルも正しく表示されるのですが、
  • bin/debug ディレクトリ直下の左側のみ/右側のみのテキストファイルや、
  • binディレクトリ以外(obj/properties/src/libフォルダ等々)の左側のみ/右側のみのテキストファイルは、表示されなくなります。

Ticket History (3/8 Histories)

2020-03-31 13:57 Updated by: None
  • New Ticket "フォルダ比較で「バイナリファイルの表示」をOFFにすると左側/右側のみファイルが表示されない" created
2020-04-01 08:12 Updated by: sdottaka
Comment

ご連絡ありがとうございます。 おそらくこちらでも同じ現象が発生したと思います。 もし、比較するフォルダ内に4MB以上のバイナリファイルが存在しているのであれば、 それ以降のファイルがテキストファイルでもバイナリファイルとみなされてしまう問題がありました。 (4MB以上のファイルの場合、クイックコンテンツという比較方法が使用されますがこれに不具合がありました)

2020-04-02 09:26 Updated by: None
Comment

調査確認ありがとうございます。 こちらでも追試してみましたが、4MB以上のバイナリファイルがない状態でも 左側/右側のみテキストファイルが表示されなくなることがあるようです。

おそらくですが、 「左側のみ/右側のみのバイナリファイル」を検出した場合にも、 それ以降の左側/右側のみテキストファイルをバイナリファイルとしてみなしているのではないか、と思われます。

2020-04-03 08:22 Updated by: sdottaka
Comment

フォルダ比較方法の設定が降るコンテンツではなく常にクイックコンテンツであれば4MB以上ではなくても発生します。

修正を行ったプレリリース版をアップロードしましたので、よろしければ、お試しいただけないでしょうか?

https://github.com/sdottaka/winmerge-v2-jp/releases/tag/2.16.6%2B-jp-3

2020-04-03 10:35 Updated by: None
Comment

たびたびお手数をおかけします。 プレリリース版(winmerge-2.16.6-jp-3-exe.zip)にて問題解消していることを確認しました。ありがとうございます。

不具合を見つけたバージョン(Version 2.16.4.9 Japanese + jp-9 x86 、および、winmerge-2.16.6-jp-1-exe)での挙動を再確認しましたが、 「バイナリファイルの表示」がOffの場合のバイナリファイル(4MB未満)検出後のテキストファイル比較結果表示は、

  1. 比較方法「クイックコンテンツ」だと、同一ファイル・異なっているファイル・左側のみ/右側のみファイルいずれも表示されない
  2. 比較方法「フルコンテンツ」だと、左側のみ/右側のみファイルが表示されない(同一ファイル・異なっているファイルは正しく表示される)
  3. 比較方法「バイナリコンテンツ」だと、同一ファイル・異なっているファイル・左側のみ/右側のみファイルすべて正しく表示される

という動作になり、また4MB以上のバイナリファイルのある/なしにかかわらず結果は変わらないように見えました。

WinMerge 2.16.6+-jp-3の修正にて上記1・2とも包括的に直っているようなので問題ないとは思われますが、発生している事象の相違があるようなので一応追加報告しておきます。

(こちらの環境でのWinMerge設定に何か問題があるだけのような気もしてきました・・・バイナリ比較設定をいろいろいじろうとして比較-バイナリの「表示設定」「バイナリモード」「文字セット」ボタンを何回かクリックするだけでWinMergeが異常終了する状態になってしまっており、WinMergeにかかわるレジストリ保持値等が破損している可能性が高いです)

2020-04-03 20:48 Updated by: sdottaka
Comment

ご確認ありがとうございます。

「比較-バイナリの「表示設定」「バイナリモード」「文字セット」ボタンを何回かクリックするだけでWinMergeが異常終了する」 はこちらでは再現できませんでした。 何か発生条件がわかりましたら、ご連絡いただけると助かります。

2020-04-06 11:01 Updated by: None
Comment

お手数をお掛けしております。

異常終了の件については発生条件がある程度絞り込めたので、Ticket #40308 のほうにて書き込みました。(別事象をコメントの追記で報告してしまいすみません)

2020-04-29 20:50 Updated by: sdottaka
  • Status Update from Open to Closed
  • Resolution Update from None to Fixed
Comment

2.16.6+-jp-4で修正しています。

Attachment File List

No attachments

Edit

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Login