Merge branch 'invalid_handles' into 'master'

make all negative handles invalid, not just -1

Since opposite_halfedge_handle for a handle with idx -1 produces a handle with idx -2, it can be helpful to detect handles with -2 as index as invalid as well.

See merge request !96
25 jobs for master in 75 minutes and 33 seconds (queued for 1 second)
Status Job ID Name Coverage
  Test
passed #13580
VS2013
VS2013-32-bit-shared-apps

00:05:35

passed #13581
VS2013
VS2013-32-bit-shared-no-apps

00:03:34

passed #13584
VS2013
VS2013-32-bit-static-apps

00:04:53

passed #13585
VS2013
VS2013-32-bit-static-no-apps

00:04:01

passed #13578
VS2013
VS2013-64-bit-shared-apps

00:05:29

passed #13579
VS2013
VS2013-64-bit-shared-no-apps

00:04:13

passed #13582
VS2013
VS2013-64-bit-static-apps

00:05:35

passed #13583
VS2013
VS2013-64-bit-static-no-apps

00:04:38

passed #13572
VS2015
VS2015-32-bit-shared-apps

00:06:11

passed #13573
VS2015
VS2015-32-bit-shared-no-apps

00:05:12

passed #13576
VS2015
VS2015-32-bit-static-apps

00:05:59

passed #13577
VS2015
VS2015-32-bit-static-no-apps

00:05:21

passed #13570
VS2015
VS2015-64-bit-shared-apps

00:07:47

passed #13593
VS2015
VS2015-64-bit-shared-no-apps

00:05:23

passed #13574
VS2015
VS2015-64-bit-static-apps

00:06:57

failed #13592
VS2015
VS2015-64-bit-static-no-apps

00:05:37

passed #13564
Linux
clang-c++11

00:20:30

passed #13566
Linux
clang-c++98

00:16:48

passed #13569
Linux
cppcheck

00:00:33

passed #13563
Linux
gcc-c++11

00:31:35

passed #13565
Linux
gcc-c++98

00:04:00

passed #13567
Apple
macos-c++11

00:16:24

passed #13568
Apple
macos-c++98

00:15:33

failed #13571
VS2015
VS2015-64-bit-shared-no-apps

00:05:54

failed #13575
VS2015
VS2015-64-bit-static-no-apps

00:05:33

 
Name Stage Failure
failed
VS2015-64-bit-static-no-apps Test There is an unknown failure, please try again
1>  CPack: Create package using NSIS
1> CPack: Install projects
1> CPack: - Install project: OpenMesh
1> CPack: Create package
1> CPack: - package: E:/gitlab/builds/1900f1de/0/OpenMesh/OpenMesh/build-release/OpenMesh-7.0.exe generated.
========== Build: 1 succeeded, 0 failed, 5 up-to-date, 0 skipped ==========
A duplicate file name exists, or the file
cannot be found.
ERROR: Build failed: exit status 1