Fix a bug of handling single quote in the correction algorithm

Bug: 6096247
Change-Id: I5490bbdee4ce1e3e0729ec1510a2baab85eeaf05
diff --git a/native/jni/src/correction.cpp b/native/jni/src/correction.cpp
index 376e9a1..a1f8129 100644
--- a/native/jni/src/correction.cpp
+++ b/native/jni/src/correction.cpp
@@ -344,8 +344,10 @@
                 mDistances[mOutputIndex] =
                         mProximityInfo->getNormalizedSquaredDistance(mInputIndex, proximityIndex);
             }
-            incrementInputIndex();
-            incremented = true;
+            if (!isQuote(c)) {
+                incrementInputIndex();
+                incremented = true;
+            }
         }
         return processSkipChar(c, isTerminal, incremented);
     }
@@ -710,7 +712,7 @@
         ed = max(0, ed - quoteDiffCount);
         adjustedProximityMatchedCount = min(max(0, ed - (outputLength - inputLength)),
                 proximityMatchedCount);
-        if (transposedCount < 1) {
+        if (transposedCount <= 0) {
             if (ed == 1 && (inputLength == outputLength - 1 || inputLength == outputLength + 1)) {
                 // Promote a word with just one skipped or excessive char
                 if (sameLength) {