diff --git a/src/core/ngx_string.c b/src/core/ngx_string.c
index f042d7c..2bb335a 100644
--- a/src/core/ngx_string.c
+++ b/src/core/ngx_string.c
@@ -980,20 +980,21 @@
                 break;
             }
 
-            /* skip the invalid quoted character */
+            /* the invalid quoted character */
 
-            s++;
-            size--;
+            state = sw_usual;
+
+            *d++ = ch;
 
             break;
 
         case sw_quoted_second:
 
+            state = sw_usual;
+
             if (ch >= '0' && ch <= '9') {
                 ch = (u_char) ((decoded << 4) + ch - '0');
 
-                state = sw_usual;
-
                 if (ch > '%' && ch < 0x7f) {
                     *d++ = ch;
                     break;
@@ -1013,8 +1014,6 @@
                     goto done;
                 }
 
-                state = sw_usual;
-
                 if (ch > '%' && ch < 0x7f) {
                     *d++ = ch;
                     break;
@@ -1025,7 +1024,7 @@
                 break;
             }
 
-            /* skip the invalid quoted character */
+            /* the invalid quoted character */
 
             break;
         }
