re-generated codepages with new ucm2cp.c: removed dotnet 1.0 support for cleaner...
[mono.git] / mcs / class / I18N / MidEast / CP1254.cs
index 5ac185b6e1292138664a4bf6f01511f7d05ce5ca..47184ed3d00af83222ac1e49742c640cb542b17d 100644 (file)
@@ -138,15 +138,16 @@ public class CP1254 : ByteEncoding
                                                 byte* bytes, int byteCount)
        {
                int ch;
-               int charIndex;
+               int charIndex = 0;
                int byteIndex = 0;
 #if NET_2_0
                EncoderFallbackBuffer buffer = null;
 #endif
-               for (charIndex=0; charCount > 0; charIndex++, charCount--)
+               while (charCount > 0)
                {
                        ch = (int)(chars[charIndex]);
-                       bool fallback = false;
+                       charIndex++;
+                       charCount--;
                        if(ch >= 128) switch(ch)
                        {
                                case 0x0081:
@@ -286,29 +287,17 @@ public class CP1254 : ByteEncoding
                                        }
                                        else
                                        {
-#if NET_2_0
-                                               //Execute fallback routine and set fallback flag on
                                                HandleFallback (ref buffer, chars, ref charIndex, ref charCount, bytes, ref byteIndex, ref byteCount);
-                                               fallback = true;
-#else
-                                               ch = 0x3F;
-#endif
+                                               continue;
                                        }
                                }
                                break;
                        }
                        //Write encoded byte to buffer, if buffer is defined and fallback was not used
-                       if (bytes != null && !fallback)
-                       {
+                       if (bytes != null)
                                bytes[byteIndex] = (byte)ch;
-                       }
-                       
-                       //Bump counters if fallback was not used
-                       if (!fallback)
-                       {
-                               byteIndex++;
-                               byteCount--;
-                       }
+                       byteIndex++;
+                       byteCount--;
                }
                return byteIndex;
        }