Fixing a bug in SkOpEdgeBuilder::walk that causes pathOps to fail when cubic segment is reducable

Inside SkOpEdgeBuilder::walk(), when current segment is cubic curve, its shape may be reduced, therefore, the curve points should be determined by the reduction result ‘split->fVerb’ instead of ‘verb’.

Actually, inside this switch case, ‘verb’ is always ‘SkPath::kCubic_Verb’, which makes the ‘fCanAdd’ always true. The outcome of this bug makes the subsequent logic which depends on ‘fCanAdd’ (L301-332) incorrect, and in some cases, fails the whole boolean operation at L329.

The Fiddle below demonstrates how this bug fails a union operation of two paths, by returning an empty path.
https://fiddle.skia.org/c/e528567b62bc338cd99f4a89f0c5342e

Screen shot of the fiddle:
https://www.dropbox.com/s/4bnzlponq6gen27/pathOpsBug.png?dl=0

2nd Fiddle drawing the results (larger)
https://fiddle.skia.org/c/1f2a513c2ee0395b9d05fb1eb987b01f

Change-Id: If07f54cef1b9409f9b6db27d6294a3e3461b0181
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284426
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
diff --git a/AUTHORS b/AUTHORS
index 838af91..bead702 100755
--- a/AUTHORS
+++ b/AUTHORS
@@ -36,6 +36,7 @@
 Matthew Leibowitz <mattleibow@live.com>
 Microsoft <*@microsoft.com>
 MIPS <*@imgtec.com>
+Ning Liu <ningliu@invisionapp.com>
 Noah Lavine <noah.b.lavine@gmail.com>
 NVIDIA <*@nvidia.com>
 Opera Software ASA <*@opera.com>