[MAT-443] fix segfault in mldivide from "triangle" pass.

The fuzzer picked up a segfault in mldivide for the data presented in the regression test included. Essentially, matrix with a row containing all zeros, which is a valid input, could cause a segfault due to the value -1 being a flag and it not being overwritten by a `rowStart` as there effectively isn't one in this case. So a lookup of index `size_t = -1` occurs and causes havoc. Patch basically checks indices are valid before attempting the check of permutation validity. Regression test added straight from fuzzer input that found the bug.

Coverage:
Java: 77% (no change)
build/src/jshim 0.8% (no change)
build/src/librdag 17.1% (no change)
src/jshim 53.1% (no change)
src/librdag 94.2% (no change)
src/librdag/runners 94.8% (up 0.2%).