bugfixed returned charsUsed counter
authorGerardo García Peña <killabytenow@gmail.com>
Tue, 21 May 2013 11:41:13 +0000 (13:41 +0200)
committerGerardo García Peña <killabytenow@gmail.com>
Tue, 21 May 2013 11:41:13 +0000 (13:41 +0200)
mcs/class/corlib/System.Text/UTF8Encoding.cs

index f65f9af14a326752c174eedfd0e7de49f8c2c492..9a2b165cab919407fc1fa4ec59d800ac62f19757 100644 (file)
@@ -468,6 +468,9 @@ again:
                                        null, 0,
                                        out t_charsProcessed, out t_bytesProcessed, ref leftChar);
 
+                       if(s == EncoderStatus.InsufficientSpace)
+                               return EncoderStatus.InsufficientSpace;
+
                        charsProcessed += t_charsProcessed;
                        bytesProcessed += t_bytesProcessed;
 
@@ -475,9 +478,6 @@ again:
                        case EncoderStatus.Ok:
                                break;  // everything OK :D
 
-                       case EncoderStatus.InsufficientSpace:
-                               throw new ArgumentException ("Insufficient Space", "bytes");
-
                        case EncoderStatus.InputRunOut:
                                return EncoderStatus.InputRunOut;