diff -r b72c6db6890b -r 5dc02b23752f src/corelib/xml/qxmlstream.cpp --- a/src/corelib/xml/qxmlstream.cpp Wed Jun 23 19:07:03 2010 +0300 +++ b/src/corelib/xml/qxmlstream.cpp Tue Jul 06 15:10:48 2010 +0300 @@ -3003,8 +3003,7 @@ deleteDevice = false; #ifndef QT_NO_TEXTCODEC codec = QTextCodec::codecForMib(106); // utf8 - encoder = codec->makeEncoder(); - encoder->state.flags |= QTextCodec::IgnoreHeader; // no byte order mark for utf8 + encoder = codec->makeEncoder(QTextCodec::IgnoreHeader); // no byte order mark for utf8 #endif inStartElement = inEmptyElement = false; wroteSomething = false; @@ -3278,9 +3277,7 @@ if (codec) { d->codec = codec; delete d->encoder; - d->encoder = codec->makeEncoder(); - if (codec->mibEnum() == 106) - d->encoder->state.flags |= QTextCodec::IgnoreHeader; // no byte order mark for utf8 + d->encoder = codec->makeEncoder(QTextCodec::IgnoreHeader); // no byte order mark for utf8 } }