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 Name Job ID Coverage
  Test
passed clang-c++11 #13564
Linux

00:20:30

passed clang-c++98 #13566
Linux

00:16:48

passed cppcheck #13569
Linux

00:00:33

passed gcc-c++11 #13563
Linux

00:31:35

passed gcc-c++98 #13565
Linux

00:04:00

passed macos-c++11 #13567
Apple

00:16:24

passed macos-c++98 #13568
Apple

00:15:33

passed VS2013-32-bit-shared-apps #13580
VS2013

00:05:35

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

00:03:34

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

00:04:53

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

00:04:01

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

00:05:29

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

00:04:13

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

00:05:35

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

00:04:38

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

00:06:11

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

00:05:12

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

00:05:59

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

00:05:21

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

00:07:47

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

00:05:23

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

00:06:57

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

00:05:37

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

00:05:54

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

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