encoding-guesser: Don't guess UTF-8 for ASCII if it is the fallback.
authorBen Pfaff <blp@cs.stanford.edu>
Wed, 27 Apr 2011 04:36:24 +0000 (21:36 -0700)
committerBen Pfaff <blp@cs.stanford.edu>
Wed, 27 Apr 2011 04:36:24 +0000 (21:36 -0700)
When the text presented to the encoding guesser is all ASCII, normally
the encoding guesser will report ASCII as its guess.  But if the
fallback encoding is UTF-8, then it reports UTF-8 instead.
Unfortunately, this makes the encoding guesser a bit harder to test,
because guesses depend on the system's locale.  It's easier to test
if all-ASCII always yields ASCII as the guess, so this changes the
encoding guesser to do that.

This fixes a test failure on Mac OS X.  Thanks to Jeremy Lavergne for
reporting the problem.

src/libpspp/encoding-guesser.c

index 9042e93a2fd41db02012d19f206c378748adc7c8..298861e088d20b932560b13bb6dbeb5a831f4d13 100644 (file)
@@ -250,10 +250,6 @@ encoding_guess_head_encoding (const char *encoding,
       || !encoding_guess_tail_is_utf8 (data, n))
     return fallback_encoding;
 
-  if (!c_strcasecmp (fallback_encoding, "UTF-8")
-      || !c_strcasecmp (fallback_encoding, "UTF8"))
-    return "UTF-8";
-
   return "ASCII";
 }