[OT] Fix fallback mark positioning with left-to-right text

Ouch!
diff --git a/src/hb-ot-shape-fallback.cc b/src/hb-ot-shape-fallback.cc
index abc7e2b..a6e5b16 100644
--- a/src/hb-ot-shape-fallback.cc
+++ b/src/hb-ot-shape-fallback.cc
@@ -242,6 +242,10 @@
   HB_UNUSED bool is_ligature = is_a_ligature (buffer->info[base]);
 
   hb_position_t x_offset = 0, y_offset = 0;
+  if (HB_DIRECTION_IS_FORWARD (buffer->props.direction)) {
+    x_offset -= buffer->pos[base].x_advance;
+    y_offset -= buffer->pos[base].y_advance;
+  }
   unsigned int last_combining_class = 255;
   hb_glyph_extents_t cluster_extents;
   for (unsigned int i = base + 1; i < end; i++)
@@ -262,8 +266,13 @@
 
       last_combining_class = this_combining_class;
     } else {
-      x_offset -= buffer->pos[i].x_advance;
-      y_offset -= buffer->pos[i].y_advance;
+      if (HB_DIRECTION_IS_FORWARD (buffer->props.direction)) {
+	x_offset -= buffer->pos[i].x_advance;
+	y_offset -= buffer->pos[i].y_advance;
+      } else {
+	x_offset += buffer->pos[i].x_advance;
+	y_offset += buffer->pos[i].y_advance;
+      }
     }