OSDN Git Service

winmerge-jp/winmerge-jp.git
6 years agoccrystaltextmakers.cpp: Fix crash when searching or replacing text after reloading... 2.14.0+-jp-143
Takashi Sawanaka [Mon, 11 Dec 2017 22:24:02 +0000 (07:24 +0900)]
ccrystaltextmakers.cpp: Fix crash when searching or replacing text after reloading files

6 years agoMerge pull request #47 from GreyMerlin/master
Takashi Sawanaka [Fri, 8 Dec 2017 22:03:22 +0000 (07:03 +0900)]
Merge pull request #47 from GreyMerlin/master

update to newest VS2017 Release 15.5

6 years agoVS2017 15.5.0 updated version in .sln file
GreyMerlin [Thu, 7 Dec 2017 20:50:00 +0000 (12:50 -0800)]
VS2017 15.5.0 updated version in .sln file

6 years agoFix Boost's checking for new VS2017 Version 15.5.0
GreyMerlin [Thu, 7 Dec 2017 01:51:29 +0000 (17:51 -0800)]
Fix Boost's checking for new VS2017 Version 15.5.0

* Update 5 (dated Oct 2017) changes _MSC_VER to 1912.  See
https://blogs.msdn.microsoft.com/vcblog/2017/11/15/msvc-conformance-improvements-in-visual-studio-2017-version-15-5/

* This cause lots of compilation messages (neither Errors nor Warnings)
with the text "Unknown compiler version - please run the configure
tests and report the results".  I have *not* reported this new issue to
Boost.org (they will eventually catchup without my help)

* This tiny patch will prevent those compilation messages until a newer
version of Boost becomes available and WinMerge chooses to adopt it.

* Since this has been a hard message to find twice now (previously with
VS2017 15.3.0), I have added a new filter Boost to the Solution
Explorer, containing a very small selection of boost configuration
files.  Boost itself is too large to include either completely, or even
the reasonably small subset of boost files that WinMerge uses.

* Mimic changes also for VS2015 to add the Boost filter to the Solution
Explorer, even though this problem will never occur with VS2015

6 years agoVS2017 - 15.5.0 kludge for GTest UnitTests
GreyMerlin [Thu, 7 Dec 2017 01:25:38 +0000 (17:25 -0800)]
VS2017 - 15.5.0 kludge for GTest UnitTests

 * Using the latest (and just released) version 15.5.0 of VS2017
introduces the following error into the UnitTests project ...

"error C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1
namespace and TR1-only machinery are deprecated and will be REMOVED.
You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to
acknowledge that you have received this warning. "

* MSDN claims that this is a C++17 language standards issue, but I was
not able to solve this problem by specifying the use of the C++14
standard language (the Properties control for this is likewise a new
feature of version 15.5.0) See...
https://docs.microsoft.com/en-us/cpp/cpp-conformance-improvements-2017

* The only simple, short-term solution that I could come up with was to
simply follow the suggestion of defining the _SILENCE_TR1_xxx token as
given above.

* Even though this problem has been discussed in the GoogleTest github
forum since at least 6 June, the underlying problem remains un-resolved
at this hour ...
See https://github.com/google/googletest/issues/1111
See https://github.com/google/googletest/issues/1320
See https://github.com/google/googletest/pull/1311

* I will assume that Google's resolution of this problem will require
WinMerge to adopt the newest GoogleTest framework (which is likely a
good idea anyway).  I will keep an eye on their progress and resolution
and advise accordingly.  In the meantime, this kludge allows WinMerge's
UnitTests project to compile and execute correctly.

6 years agoctextmarkerdlg.cpp: Fix an issue in which the list view item is not selected in the...
Takashi Sawanaka [Mon, 4 Dec 2017 15:13:07 +0000 (00:13 +0900)]
ctextmarkerdlg.cpp: Fix an issue in which the list view item is not selected in the Marker dialog box after activating the search marker.

6 years agoPropGeneral.h: Fix mixed eol-style
Takashi Sawanaka [Wed, 29 Nov 2017 22:10:56 +0000 (07:10 +0900)]
PropGeneral.h: Fix mixed eol-style

6 years agoMessageBoxDialog.*, PropRegistry.*: Add tooltips
Takashi Sawanaka [Wed, 29 Nov 2017 22:08:31 +0000 (07:08 +0900)]
MessageBoxDialog.*, PropRegistry.*: Add tooltips

6 years agocrystaltextview.cpp: Remove a warning
Takashi Sawanaka [Sun, 26 Nov 2017 16:17:15 +0000 (01:17 +0900)]
crystaltextview.cpp: Remove a warning

6 years agoUpdate *.po files
Takashi Sawanaka [Sun, 26 Nov 2017 16:16:18 +0000 (01:16 +0900)]
Update *.po files

6 years agoAdd VHDL syntax highlighter
H.Saido [Sun, 26 Nov 2017 10:47:17 +0000 (19:47 +0900)]
Add VHDL syntax highlighter

6 years agoeditlib: Fix syntax and diff hilighting not work properly in wrapped lines(2)
Takashi Sawanaka [Sun, 19 Nov 2017 22:29:46 +0000 (07:29 +0900)]
editlib: Fix syntax and diff hilighting not work properly in wrapped lines(2)

6 years agoManual: Update 'Comparing and merging text files' section
Takashi Sawanaka [Tue, 14 Nov 2017 15:31:32 +0000 (00:31 +0900)]
Manual: Update 'Comparing and merging text files' section

6 years agoManual: Update 'Comparing and merging folders' section
Takashi Sawanaka [Tue, 14 Nov 2017 15:30:51 +0000 (00:30 +0900)]
Manual: Update 'Comparing and merging folders' section

6 years agoManual: Update Plugins section
Takashi Sawanaka [Mon, 13 Nov 2017 22:06:35 +0000 (07:06 +0900)]
Manual: Update Plugins section

6 years agoDirCmpReportDlg.cpp: Use OptionsMgr
Takashi Sawanaka [Wed, 8 Nov 2017 12:15:28 +0000 (21:15 +0900)]
DirCmpReportDlg.cpp: Use OptionsMgr

6 years agoAdd ReportTest.cmd
Takashi Sawanaka [Mon, 6 Nov 2017 22:15:17 +0000 (07:15 +0900)]
Add ReportTest.cmd

6 years agoccrystaltextview.cpp: Avoid crash when generating a report if editor view width is 0
Takashi Sawanaka [Mon, 6 Nov 2017 22:12:42 +0000 (07:12 +0900)]
ccrystaltextview.cpp: Avoid crash when generating a report if editor view width is 0

6 years ago- Make /noprefs, /ignorews, /ignoreblanklines, /ignorecase and /ignoreeol command...
Takashi Sawanaka [Mon, 6 Nov 2017 14:38:56 +0000 (23:38 +0900)]
- Make /noprefs, /ignorews, /ignoreblanklines, /ignorecase and /ignoreeol command line options re-enabled
- Add /config key=value command line option

6 years agoMerge.cpp: Exit WinMerge after folder comparison or report creation is complete if...
Takashi Sawanaka [Mon, 6 Nov 2017 14:13:01 +0000 (23:13 +0900)]
Merge.cpp: Exit WinMerge after folder comparison or report creation is complete if enabled non-interactive mode

6 years agoPropGeneral.*: Load language combobox list asynchronously in order to avoid blocking...
Takashi Sawanaka [Mon, 30 Oct 2017 14:27:56 +0000 (23:27 +0900)]
PropGeneral.*: Load language combobox list asynchronously in order to avoid blocking the UI(2)
Avoid possible dead lock.

6 years agoeditor addin.sct: ExecFilterCommand: Fix variable not found error when clicking the...
Takashi Sawanaka [Sun, 29 Oct 2017 15:31:34 +0000 (00:31 +0900)]
editor addin.sct: ExecFilterCommand: Fix variable not found error when clicking the Cancel button

6 years agoManual: Updaate Locales section
Takashi Sawanaka [Sun, 29 Oct 2017 14:18:14 +0000 (23:18 +0900)]
Manual: Updaate Locales section

6 years agoManual: The option 'Add Shell menu to context menu' no longer exists
Takashi Sawanaka [Sun, 29 Oct 2017 13:57:48 +0000 (22:57 +0900)]
Manual: The option 'Add Shell menu to context menu' no longer exists

6 years agoManual: Update Install section (WIP)
Takashi Sawanaka [Sun, 29 Oct 2017 13:40:29 +0000 (22:40 +0900)]
Manual: Update Install section (WIP)

6 years agoManual: Add Compare image files section (WIP)
Takashi Sawanaka [Sun, 29 Oct 2017 12:46:28 +0000 (21:46 +0900)]
Manual: Add Compare image files section (WIP)

6 years agoManual: Update Quick start section
Takashi Sawanaka [Sun, 29 Oct 2017 12:32:46 +0000 (21:32 +0900)]
Manual: Update Quick start section

6 years agoDirView.cpp: Remove trailing garbage from a dragged text
Takashi Sawanaka [Sun, 29 Oct 2017 12:07:08 +0000 (21:07 +0900)]
DirView.cpp: Remove trailing garbage from a dragged text

6 years agoAdded tag 2.14.0+-jp-142 for changeset f0ac4689d88f
Takashi Sawanaka [Sat, 28 Oct 2017 16:10:09 +0000 (01:10 +0900)]
Added tag 2.14.0+-jp-142 for changeset f0ac4689d88f

6 years agoManual: Update configuration section (WIP)
Takashi Sawanaka [Sat, 28 Oct 2017 15:48:39 +0000 (00:48 +0900)]
Manual: Update configuration section (WIP)

6 years agoPropGeneral.*: Load language combobox list asynchronously in order to avoid blocking...
Takashi Sawanaka [Sat, 28 Oct 2017 15:33:33 +0000 (00:33 +0900)]
PropGeneral.*: Load language combobox list asynchronously in order to avoid blocking the UI

6 years agoManual: Update FAQ section
Takashi Sawanaka [Thu, 26 Oct 2017 14:17:05 +0000 (23:17 +0900)]
Manual: Update FAQ section

6 years agoManual: Update shortcut keys section
Takashi Sawanaka [Wed, 25 Oct 2017 22:49:13 +0000 (07:49 +0900)]
Manual: Update shortcut keys section

6 years agoManual/screenshots/*.png: Update screenshots(3)
Takashi Sawanaka [Wed, 25 Oct 2017 22:13:43 +0000 (07:13 +0900)]
Manual/screenshots/*.png: Update screenshots(3)

6 years agoManual/screenshots/*.png: Update screenshots(2)
Takashi Sawanaka [Tue, 24 Oct 2017 22:41:26 +0000 (07:41 +0900)]
Manual/screenshots/*.png: Update screenshots(2)

6 years agoFine-tune the widths of panels in status bar
Takashi Sawanaka [Mon, 23 Oct 2017 21:26:43 +0000 (06:26 +0900)]
Fine-tune the widths of panels in status bar

6 years agoManual/screenshots/*.png: Update screenshots(1)
Takashi Sawanaka [Sun, 22 Oct 2017 16:37:02 +0000 (01:37 +0900)]
Manual/screenshots/*.png: Update screenshots(1)

6 years agoDirView.cpp: Restore lost feature: PATCH: [ 1881454 ] Create pair for unique folder...
Takashi Sawanaka [Sun, 22 Oct 2017 15:44:49 +0000 (00:44 +0900)]
DirView.cpp: Restore lost feature: PATCH: [ 1881454 ] Create pair for unique folder and open them

6 years agoMerge.rc: &1 -> &1st &2 -> &2nd, &3 -> &3rd
Takashi Sawanaka [Sun, 22 Oct 2017 10:34:58 +0000 (19:34 +0900)]
Merge.rc: &1 -> &1st &2 -> &2nd, &3 -> &3rd

6 years agoMergeEditView.cpp: Show Copy to Left menu item rather than Copy from Right menu item...
Takashi Sawanaka [Sat, 21 Oct 2017 14:14:44 +0000 (23:14 +0900)]
MergeEditView.cpp: Show Copy to Left menu item rather than Copy from Right menu item on Context menu

6 years agoeditor addin.sct: Fix untranslated text
Takashi Sawanaka [Sat, 21 Oct 2017 12:50:35 +0000 (21:50 +0900)]
editor addin.sct: Fix untranslated text

6 years agoCreateRelease.cmd: Copy releases after destination folder created
Takashi Sawanaka [Sat, 21 Oct 2017 11:24:06 +0000 (20:24 +0900)]
CreateRelease.cmd: Copy releases after destination folder created

6 years agoFix some methods in subclass being no longer called
Takashi Sawanaka [Sat, 21 Oct 2017 04:23:05 +0000 (13:23 +0900)]
Fix some methods in subclass being no longer called

6 years agoMake internal editor undoable again
Takashi Sawanaka [Sat, 21 Oct 2017 02:16:50 +0000 (11:16 +0900)]
Make internal editor undoable again

6 years ago- Upload releases to virustotal.com using CreateRelease.cmd rather than BuildArc.cmd
Takashi Sawanaka [Sat, 21 Oct 2017 01:34:13 +0000 (10:34 +0900)]
- Upload releases to virustotal.com using CreateRelease.cmd rather than BuildArc.cmd
- Use rmdir /s /q command instead of del /s /q to delete subfolders

6 years agoRemove Check For Update menu item(2)
Takashi Sawanaka [Sat, 21 Oct 2017 01:18:27 +0000 (10:18 +0900)]
Remove Check For Update menu item(2)

6 years agoBuildArc.cmd: Fix vcomp140.dll not being copied to x64-zip-version foolder
Takashi Sawanaka [Fri, 20 Oct 2017 15:07:53 +0000 (00:07 +0900)]
BuildArc.cmd: Fix vcomp140.dll not being copied to x64-zip-version foolder

6 years agoFix BuildArc.cmd and CreateRelease.cmd
Takashi Sawanaka [Wed, 18 Oct 2017 22:39:51 +0000 (07:39 +0900)]
Fix BuildArc.cmd and CreateRelease.cmd

6 years agoUpdate .hgignore
Takashi Sawanaka [Wed, 18 Oct 2017 22:37:33 +0000 (07:37 +0900)]
Update .hgignore

6 years agoBuildBin.vs2015.cmd: Revert unintentional changes
Takashi Sawanaka [Wed, 18 Oct 2017 11:39:39 +0000 (20:39 +0900)]
BuildBin.vs2015.cmd: Revert unintentional changes

6 years agoAdd CreateRelease.cmd
Takashi Sawanaka [Tue, 17 Oct 2017 22:49:23 +0000 (07:49 +0900)]
Add CreateRelease.cmd

6 years agoRemove Check For Update menu item
Takashi Sawanaka [Tue, 17 Oct 2017 22:48:58 +0000 (07:48 +0900)]
Remove Check For Update menu item

6 years agoBuildArc.cmd: Use downloaded files
Takashi Sawanaka [Tue, 17 Oct 2017 15:26:42 +0000 (00:26 +0900)]
BuildArc.cmd: Use downloaded files

6 years agoBuidAll.*.cmd: Run unit tests
Takashi Sawanaka [Sun, 15 Oct 2017 22:10:50 +0000 (07:10 +0900)]
BuidAll.*.cmd: Run unit tests

6 years agoKorean.po: Change file encoding UTF-8 to CP949
Takashi Sawanaka [Sun, 15 Oct 2017 02:44:45 +0000 (11:44 +0900)]
Korean.po: Change file encoding UTF-8 to CP949

6 years agoInstaller: Remove Japanese help
Takashi Sawanaka [Sat, 14 Oct 2017 11:40:16 +0000 (20:40 +0900)]
Installer: Remove Japanese help

6 years agoDownloadDeps.cmd: setlocal
Takashi Sawanaka [Sat, 14 Oct 2017 11:06:05 +0000 (20:06 +0900)]
DownloadDeps.cmd: setlocal

6 years agoBuildBin.*.cmd: Remove unneeded call of del command
Takashi Sawanaka [Sat, 14 Oct 2017 11:05:46 +0000 (20:05 +0900)]
BuildBin.*.cmd: Remove unneeded call of del command

6 years agoInstaller: - Use downloaded files
Takashi Sawanaka [Sat, 14 Oct 2017 10:43:57 +0000 (19:43 +0900)]
Installer: - Use downloaded files
- Fix url

6 years agohg_clone.cmd: pull and update if already cloned
Takashi Sawanaka [Sat, 14 Oct 2017 10:36:47 +0000 (19:36 +0900)]
hg_clone.cmd: pull and update if already cloned

6 years agoAdd WinMerge32BitPluginProxy.exe
Takashi Sawanaka [Sat, 14 Oct 2017 10:31:53 +0000 (19:31 +0900)]
Add WinMerge32BitPluginProxy.exe

6 years agoAdd DownloadDeps.cmd
Takashi Sawanaka [Sat, 14 Oct 2017 10:31:21 +0000 (19:31 +0900)]
Add DownloadDeps.cmd

6 years agoMerge pull request #45 from sheppaul/patch-1
Takashi Sawanaka [Sat, 14 Oct 2017 04:19:40 +0000 (13:19 +0900)]
Merge pull request #45 from sheppaul/patch-1

Update Korean.po

6 years agoUpdate Korean.po
sheppaul [Sat, 14 Oct 2017 01:25:32 +0000 (10:25 +0900)]
Update Korean.po

Translation is updated.

6 years agoMerge pull request #44 from GreyMerlin/master
Takashi Sawanaka [Fri, 13 Oct 2017 14:52:49 +0000 (23:52 +0900)]
Merge pull request #44 from GreyMerlin/master

Level 4 Warning Cleanup, first attempt

6 years agoCleanup2: C4456 "Decl hides previous local decl"
GreyMerlin [Fri, 13 Oct 2017 03:12:19 +0000 (20:12 -0700)]
Cleanup2: C4456 "Decl hides previous local decl"

 * Remove a number of C4456 (level=4) warnings.  Declarations hiding
previous local declarations is generally sloppy/dangerous practice.
 * This commit now eliminates these warnings from WinMerge (but not
from the 'poco' sub-projects.

6 years agoCleanup2: C4456 "Decl hides previous local decl"
GreyMerlin [Mon, 9 Oct 2017 18:07:22 +0000 (11:07 -0700)]
Cleanup2: C4456 "Decl hides previous local decl"

 * Remove a number of C4456 (level=4) warnings.  Declarations hiding
previous local declarations is generally sloppy/dangerous practice.
 * and a few other minor cleanup changes

6 years agoCleanup2: use named item for empty DirItem.size
GreyMerlin [Tue, 10 Oct 2017 23:38:30 +0000 (16:38 -0700)]
Cleanup2: use named item for empty DirItem.size

 * Clarifies code and eliminates warning "C4245: conversion from
'int' to 'Poco::File::FileSize', signed/unsigned mismatch"

6 years agoCleanup2: Cleanup 'Output Style' declarations
GreyMerlin [Thu, 12 Oct 2017 01:49:07 +0000 (18:49 -0700)]
Cleanup2: Cleanup 'Output Style' declarations

 * Output Style values (selecting how to format patches that are
generated by the `Tools|Generate Patch` menu dialog) were defined in two
unrelated places (with slightly different names), but need to have the
identical values.
 * Furthermore, five of the eight values are not used by WinMerge.
 * And- the values may get stored into the Registry, so they cannot be
accidentally changed in the future.

 * These changes simplify this situation by basing both definitions on
the `diff.h` values, while leaving the two name groups both existing.
 * All declarations and references to the five unused values are
commented-out

6 years agoCleanup2: Uninitialized Local Variables
GreyMerlin [Thu, 12 Oct 2017 23:03:54 +0000 (16:03 -0700)]
Cleanup2: Uninitialized Local Variables

I've set warning level = 4 for the WinMerge project (but not for the
three 'poco' projects).  It generates LOTS of warnings; many categories
are not interesting and I certainly do not recommend that the Level=4
become an official setting.  But some warning categories do seem
important, either functionally or aesthetically.   So, I'll slowly be
working on the ones that I think are interesting...

 * L4 warning C4701: "potentially uninitialized local variable used".
This commit eliminates all occurrences from WinMerge and UnitTests
projects (but not from the 'poco' projects).

6 years agoCleanup2: More Build security checking options
GreyMerlin [Thu, 12 Oct 2017 21:40:15 +0000 (14:40 -0700)]
Cleanup2: More Build security checking options

 * Add SDLCheck=true to all compilations for additional "Security
Checking".  See
https://docs.microsoft.com/en-us/cpp/build/reference/sdl-enable-additional-security-checks
 * Make sure that <BufferSecurityCheck>=true.  It had been set to false
for the three poco projects.
 * Both VS2015 and VS2017 project files are changed.

6 years agoMerge pull request #43 from GreyMerlin/master
Takashi Sawanaka [Thu, 12 Oct 2017 22:41:10 +0000 (07:41 +0900)]
Merge pull request #43 from GreyMerlin/master

Some `size_t` should be `ptrdiff_t`,

6 years agoCleanup2: gtest/* files into Solution Explorer
GreyMerlin [Tue, 10 Oct 2017 21:13:39 +0000 (14:13 -0700)]
Cleanup2: gtest/* files into Solution Explorer

 * Add the ./External/gtest/*.h and *.cc files into the UnitTests
Solution Explorer, with appropriate sub-folders
 * The various *.cc files (except for gtest-all.cc) are marked with
  the 'ExcludedFromBuild' = True  because they are #included
and not compiled directly.
 * Changes are for both VS2015 and VS2017.

6 years agoCleanup: Fixup 1: some size_t should be ptrdiff_t
GreyMerlin [Sun, 8 Oct 2017 22:28:58 +0000 (15:28 -0700)]
Cleanup: Fixup 1: some size_t should be ptrdiff_t

 * Some recent type changes to size_t should have been to ptrdiff_t
(which is signed).
 * In particular, str_pos(), get_coding() and fget_coding() in
  cs2cs.cpp use the value -2 as a return flag.  This was being
improperly handled via size_t.
 * Finding this change led to areas with similar problems, in particular
* next and prev in DirrRangeInfo{} struct
* Open and Close in RxMatchRes{} struct.

6 years agoUpdate frhed revision to 43fbdca
Takashi Sawanaka [Mon, 9 Oct 2017 15:07:49 +0000 (00:07 +0900)]
Update frhed revision to 43fbdca

6 years agoWinMerge.*.sln: Add Test solution configuration
Takashi Sawanaka [Sun, 8 Oct 2017 11:25:37 +0000 (20:25 +0900)]
WinMerge.*.sln: Add Test solution configuration

6 years agoShellExtension: Bump revision to 1.17.0.0
Takashi Sawanaka [Sun, 8 Oct 2017 10:16:30 +0000 (19:16 +0900)]
ShellExtension: Bump revision to 1.17.0.0

6 years agoShellExtension: Make ShellExtension buildable without the source code of WinMerge
Takashi Sawanaka [Sun, 8 Oct 2017 09:20:53 +0000 (18:20 +0900)]
ShellExtension: Make ShellExtension buildable without the source code of WinMerge

6 years agoMerge7z: Add Merge7.vs2017.*
Takashi Sawanaka [Sun, 8 Oct 2017 07:49:52 +0000 (16:49 +0900)]
Merge7z: Add Merge7.vs2017.*

6 years agoMerge7z: Rename Merge7z.* to Merge.vs2015.*
Takashi Sawanaka [Sun, 8 Oct 2017 07:47:39 +0000 (16:47 +0900)]
Merge7z: Rename Merge7z.* to Merge.vs2015.*

6 years agoUse template version of secure functions
Takashi Sawanaka [Fri, 6 Oct 2017 15:05:14 +0000 (00:05 +0900)]
Use template version of secure functions

6 years agoMerge pull request #42 from GreyMerlin/master
Takashi Sawanaka [Fri, 6 Oct 2017 13:04:07 +0000 (22:04 +0900)]
Merge pull request #42 from GreyMerlin/master

Compile & Link without Level=3 warnings

6 years agoCleanup: Last minute tweaks...
GreyMerlin [Thu, 5 Oct 2017 20:57:07 +0000 (13:57 -0700)]
Cleanup: Last minute tweaks...

 * change a few more functions from long to size_t
 * add a few ASSERT statements where appropriate.  These make sure that
casting a size_t to an int or long will not truncate large values.
 * refactor a few places where the size_t changes could be better
 * fix one usage of _tsplitpath_s() that was wrong.

6 years agoCleanup: UnitTests compiles w/o warnings
GreyMerlin [Thu, 5 Oct 2017 07:16:44 +0000 (00:16 -0700)]
Cleanup: UnitTests compiles w/o warnings

 * Project properties changed to use /EHa (Async) for all configurations
 * Debug|X64 changed to use Edit-and-Continue
 * Changes made to both VS2017 and VS2015

6 years agoFix: Don't mark Tree Mode as checked if disabled
GreyMerlin [Wed, 4 Oct 2017 23:26:25 +0000 (16:26 -0700)]
Fix: Don't mark Tree Mode as checked if disabled

 * Symptom: in the View menu, the Tree Mode entry could be marked with
the check mark, even if the menu item has been disabled (by
un-selecting the Include Folders item on the File Open dialog).
This is confusing.

 * Fix: test m_bRecursive (i.e. Include Subfolders) to determine if
SetCheck(FALSE) or SetCheck(m_bTreeMode) is needed.

6 years agoCleanup: copy vs2017 *.filters changes to vs2015
GreyMerlin [Wed, 4 Oct 2017 23:09:00 +0000 (16:09 -0700)]
Cleanup: copy vs2017 *.filters changes to vs2015

 * a recent small change to Merge.vs2017.vcxproj.filters is copied to
the corresponding vs2015 file.

6 years agoBugfix: passing NULL to strlen() causes fault
GreyMerlin [Wed, 4 Oct 2017 23:05:06 +0000 (16:05 -0700)]
Bugfix: passing NULL to strlen() causes fault

 * Symptom: a _DEBUG build could fault when calling
strlen(switch_string) in procedure begin_output().

 * Analysis: switch_string (an external char*) might never be give a
value if there are no command-line parameters.

 * Quick Solution: declare local char* mySwitch initialized with either
a copy of switch_string pointer or a pointer to the empty literal ""

6 years agoCleanup: remove all level-3 warnings
GreyMerlin [Wed, 4 Oct 2017 22:47:33 +0000 (15:47 -0700)]
Cleanup: remove all level-3 warnings

 * Eliminate 4996 deprecation warnings by appropriate function name and
parameter changes...
StrDup() -> _tcsdup()
strdup() -> _strdup()
_tfopen() -> _tfopen_s()
_topen() -> tsopen_s()
read() -> _read()
close() -> _close()
_itot() -> _itot_s()
_tcsncpy() -> _tcsncpy_s()
_tcscpy() -> _tcscpy_s()
_i64tot() -> _i64tot_s()
_stscanf() -> _stscanf_s()
localtime() -> localtime_s()
_tcslwr() -> _tcslwr_s()

 * remove unnecessary #pragma warning(disable:4355)

 * All changes tested for both vs2015 and vs2017

6 years agoCleanup poco: Remove level-3 and linker warnings
GreyMerlin [Wed, 4 Oct 2017 22:18:00 +0000 (15:18 -0700)]
Cleanup poco: Remove level-3 and linker warnings

 Foundation ...
 * Delete all #pragma warning specifications
 * Repaired all instances of 4996 deprecation warnings...
std::sprintf() -> ::sprintf_s()
controlfp() -> ::controlfp_s()
localtime() -> ::localtime_s()
std::sscanf() -> ::sscanf_s()
 * Remove debug-only warning in UUID.cpp by replacing swap_ranges()
with explicit loop on swap()
 * Remove linking to ws2_32.lib; it provided no features but caused
warnings with iphlpapi.lib
 * Removed ByteOrder.cpp, String.cpp, SignalHandler.cpp from
Foundation compilation as they provided no accessible code.

XML ...
  * Remove XMLString.cpp from XML compilation; it provides no accessible
code.

Util ...
 * Change std::sprintf() to ::sprintf_s()

WinMerge...
 * All changes tested for both vs2015 and vs2017

6 years agoCleanup `size_t`: Fewer `#pragma warning` directives
GreyMerlin [Sun, 1 Oct 2017 23:09:39 +0000 (16:09 -0700)]
Cleanup `size_t`: Fewer `#pragma warning` directives

 * Remove various `#pragma warning` directives that relate to
signed/unsigned

4018 - signed/unsigned mismatch
4100 - unreferenced formal parameter
4189 - local variable initialized but unreferenced
4244 - argument conversion, loss of data
4355 - `this` used in base member list
4512 - assignment operator could not be generated
4520 - non-existing error !!
4711 - inlining notice (off by default)

 * use `size_t` as appropriate to eliminate warnings exposed above.
 * use `static_cast<int>` as appropriate

Additional, unrelated ...
 * `_AFX_NO_MFC_CONTROLS_IN_DIALOGS`was used twice for 'X64 Release'
configuration.

6 years agoCleanup: Eliminate _CRT_xxx deprecation (3)
GreyMerlin [Sun, 1 Oct 2017 18:29:41 +0000 (11:29 -0700)]
Cleanup: Eliminate _CRT_xxx deprecation (3)

 * lost in recent merge with Sdottaka's latest commit:
3f0ab7f9cf3e84ca81af1090d9d0c1dcb8efef9c
 *This again eliminates these symbols in the *.vcxproj files ...
_CRT_SECURE_NO_WARNINGS
_CRT_NONSTDC_NO_WARNINGS
_CRT_SECURE_NO_DEPRECATE

6 years agoCleanup: Misc `size_t` related issues
GreyMerlin [Sun, 1 Oct 2017 17:27:01 +0000 (10:27 -0700)]
Cleanup: Misc `size_t` related issues

 * eliminate conversion warnings for `size_t` related expressions.
 * convert various `int` and `long` to `size_t`
 * add `static_cast<int>` or add `static_cast<long>` as appropriate
 * classical `(int)`-style casting is used in *.c files, of course

While this commit changes various parameters and data items to `size_t`,
the focus of these changes was to completely eliminate the various
warnings. This code is still fundamentally restricted to 2GB of text.

There is still much work to do to generalize the fundamentals of
WinMerge to be fully `size_t` capable (for the X64 platform).

6 years agoCleanup: Eliminate 'C4091' warnings
GreyMerlin [Sat, 30 Sep 2017 21:19:00 +0000 (14:19 -0700)]
Cleanup: Eliminate 'C4091' warnings

The "warning C4091: 'typedef ': ignored on left of 'tagGPFIDL_FLAGS'
when no variable is declared" is generated within the Microsoft
<shlobj.h> include file, but only for "toolsets" that support XP.  I
have no idea why this is true?!?!

 * A `#pragma warning` now is pushed and popped around all
`#include <shlobj.h>` statements to prevent this meaningless
and obnoxious warning message.

6 years agoCleanup CrystalEdit: `size_t` related issues
GreyMerlin [Sat, 30 Sep 2017 20:25:10 +0000 (13:25 -0700)]
Cleanup CrystalEdit: `size_t` related issues

 * eliminate conversion warnings for `size_t` related expressions.
 * convert various `int` and `long` to `size_t`
 * add `static_cast<int>` or add `static_cast<long>` as appropriate
 * classical `(int)` casting is used in ASSERT, for simple convenience.
 * add a few ASSERT() statements to assure that various `size_t` values
remain within the positive `int` value range.
 * Since `-1` is often used as a "size flag", these changes now
explicitly test for `x != -1` rather than `x >= 0`

While this commit changes various parameters and data items to `size_t`,
the focus of these changes was to completely eliminate the various
warnings. This code is still fundamentally restricted to 2GB of text.

There is still much work to do to generalize the fundamentals of
CrystalEdit to be fully `size_t` capable (for the X64 platform).  Two
items of important note:
  1. MFC's CPOINT structure is limited to `LONG` values.
   The `.x` member should become `size_t`.
2. MFC's CSTRING data is limited to `int` maximum length

6 years agoCleanup poco/XML: `size_t` related warnings
GreyMerlin [Sat, 30 Sep 2017 19:17:27 +0000 (12:17 -0700)]
Cleanup poco/XML: `size_t` related warnings

 * properly cast return type for `XML_GetCurrentByteIndex`

6 years agoCleanup: Eliminate _CRT_xxx deprecation (2)
GreyMerlin [Sat, 30 Sep 2017 19:00:00 +0000 (12:00 -0700)]
Cleanup: Eliminate _CRT_xxx deprecation (2)

 * lost in Merge with -jp-141

6 years agoCleanup poco/Foundation: 'size_t' related warnings
GreyMerlin [Fri, 29 Sep 2017 22:21:56 +0000 (15:21 -0700)]
Cleanup poco/Foundation: 'size_t' related warnings

 * eliminate conversion warnings for `size_t` related expressions.
 * convert a few `int` to `size_t`
 * SharedMemory files `_size` is now LONGLONG and mappings are correctly
created for files larger than 65kb.

6 years agoCleanup: Eliminate _CRT_xxx deprecation situations
GreyMerlin [Mon, 25 Sep 2017 05:01:38 +0000 (22:01 -0700)]
Cleanup: Eliminate _CRT_xxx deprecation situations

* The VC compiler began emitting Warnings for various deprecated CRT and
POSIX function names beginning with VS2005.  It was convenient to
ignore these warnings by defining the following preprocessor symbols in
the *.vcxproj files ...
_CRT_SECURE_NO_WARNINGS
_CRT_NONSTDC_NO_WARNINGS
_CRT_SECURE_NO_DEPRECATE

 * This change eliminates those symbol definitions, and appropriately
upgrades the code to properly use the modern, security enhanced,
functions.
 * Most of the existing code properly uses TCHAR, however some areas
explicitly use 'wchar_t' and some areas still use the old 'char' type.
 * The areas that still use 'char' need further investigation and
possible repair as the rest of the program completely uses Unicode.

6 years agoCleanup: Remove useless AFX_INSERT_LOCATION
GreyMerlin [Sat, 23 Sep 2017 23:51:04 +0000 (16:51 -0700)]
Cleanup: Remove useless AFX_INSERT_LOCATION

 * Most *.h files do not have MFC's AFX_INSERT_LOCATION indicator
 * And its generally useless
 * Now its gone, with general cleanup at the end of *.h files

6 years agoCleanup: Eliminate silly *.inl files in CCrystalEdit
GreyMerlin [Sat, 23 Sep 2017 23:37:27 +0000 (16:37 -0700)]
Cleanup: Eliminate silly *.inl files in CCrystalEdit

 * Elimination #defines for INLINE that always ended up blank
 * Merged code from *.inl files into appropriate *.h files
 * Eliminate ancient CE_DLL_BUILD stuff
 * Appropriate changes to *.vcxproj and *.vcxproj.filters files to
account for removal of the five *.inl files, for both
VS2015 and VS2017