OffsetTo::sanitize() Add version with three user_data
diff --git a/src/hb-open-type.hh b/src/hb-open-type.hh
index 76ce55a..3926694 100644
--- a/src/hb-open-type.hh
+++ b/src/hb-open-type.hh
@@ -277,20 +277,28 @@
 		  (StructAtOffset<Type> (base, *this).sanitize (c) ||
 		   neuter (c)));
   }
-  template <typename T>
-  inline bool sanitize (hb_sanitize_context_t *c, const void *base, T user_data) const
+  template <typename T1>
+  inline bool sanitize (hb_sanitize_context_t *c, const void *base, T1 d1) const
   {
     TRACE_SANITIZE (this);
     return_trace (sanitize_shallow (c, base) &&
-		  (StructAtOffset<Type> (base, *this).sanitize (c, user_data) ||
+		  (StructAtOffset<Type> (base, *this).sanitize (c, d1) ||
 		   neuter (c)));
   }
   template <typename T1, typename T2>
-  inline bool sanitize (hb_sanitize_context_t *c, const void *base, T1 user_data1, T2 user_data2) const
+  inline bool sanitize (hb_sanitize_context_t *c, const void *base, T1 d1, T2 d2) const
   {
     TRACE_SANITIZE (this);
     return_trace (sanitize_shallow (c, base) &&
-		  (StructAtOffset<Type> (base, *this).sanitize (c, user_data1, user_data2) ||
+		  (StructAtOffset<Type> (base, *this).sanitize (c, d1, d2) ||
+		   neuter (c)));
+  }
+  template <typename T1, typename T2, typename T3>
+  inline bool sanitize (hb_sanitize_context_t *c, const void *base, T1 d1, T2 d2, T3 d3) const
+  {
+    TRACE_SANITIZE (this);
+    return_trace (sanitize_shallow (c, base) &&
+		  (StructAtOffset<Type> (base, *this).sanitize (c, d1, d2, d3) ||
 		   neuter (c)));
   }