[Httpunit-commit] CVS: httpunit/src/com/meterware/httpunit WebResponse.java,1.98,1.99
Brought to you by:
russgold
|
From: Russell G. <rus...@us...> - 2002-11-13 14:01:26
|
Update of /cvsroot/httpunit/httpunit/src/com/meterware/httpunit
In directory usw-pr-cvs1:/tmp/cvs-serv19457/src/com/meterware/httpunit
Modified Files:
WebResponse.java
Log Message:
Handle unknown charsets reported by server
Index: WebResponse.java
===================================================================
RCS file: /cvsroot/httpunit/httpunit/src/com/meterware/httpunit/WebResponse.java,v
retrieving revision 1.98
retrieving revision 1.99
diff -u -r1.98 -r1.99
--- WebResponse.java 12 Nov 2002 13:41:54 -0000 1.98
+++ WebResponse.java 13 Nov 2002 14:01:23 -0000 1.99
@@ -194,13 +194,8 @@
public String getCharacterSet() {
if (_characterSet == null) {
readContentTypeHeader();
- if (_characterSet == null) _characterSet = getHeaderField( "Charset" );
- if (_characterSet == null) _characterSet = HttpUnitOptions.getDefaultCharacterSet();
- try {
- "abcd".getBytes( _characterSet );
- } catch (UnsupportedEncodingException e) {
- _characterSet = getDefaultEncoding();
- }
+ if (_characterSet == null) setCharacterSet( getHeaderField( "Charset" ) );
+ if (_characterSet == null) setCharacterSet( HttpUnitOptions.getDefaultCharacterSet() );
}
return _characterSet;
}
@@ -900,12 +895,12 @@
: getHeaderField( "Content-type" );
if (contentHeader == null) {
_contentType = HttpUnitOptions.getDefaultContentType();
- _characterSet = HttpUnitOptions.getDefaultCharacterSet();
+ setCharacterSet( HttpUnitOptions.getDefaultCharacterSet() );
_contentHeader = _contentType + ";charset=" + _characterSet;
} else {
String[] parts = HttpUnitUtils.parseContentTypeHeader( contentHeader );
_contentType = parts[0];
- if (parts[1] != null) _characterSet = parts[1];
+ if (parts[1] != null) setCharacterSet( parts[1] );
}
}
@@ -962,6 +957,18 @@
}
}
return (_defaultEncoding = System.getProperty( "file.encoding" ));
+ }
+
+
+ private void setCharacterSet( String characterSet ) {
+ if (characterSet == null) return;
+
+ try {
+ "abcd".getBytes( characterSet );
+ _characterSet = characterSet;
+ } catch (UnsupportedEncodingException e) {
+ _characterSet = getDefaultEncoding();
+ }
}
|