diff options
author | Thiago Macieira <thiago.macieira@nokia.com> | 2009-08-24 20:19:06 (GMT) |
---|---|---|
committer | Thiago Macieira <thiago.macieira@nokia.com> | 2009-08-24 20:19:06 (GMT) |
commit | 5a7c14af3c27089b0b8698da3c689637ffaa9cfa (patch) | |
tree | 6f2d1ad02bd9721af0fe7bd92ff7c9e2e4e078e9 /tests/auto/qsslsocket | |
parent | 2487b9d0e183047a26dcbeb87f58b771a8e12348 (diff) | |
parent | c9d2f14b2a814fd29c858d9519e82fc5cbc2afdf (diff) | |
download | Qt-5a7c14af3c27089b0b8698da3c689637ffaa9cfa.zip Qt-5a7c14af3c27089b0b8698da3c689637ffaa9cfa.tar.gz Qt-5a7c14af3c27089b0b8698da3c689637ffaa9cfa.tar.bz2 |
Merge branch '4.5' into 4.6
Conflicts:
bin/syncqt
configure
demos/boxes/glshaders.cpp
demos/boxes/vector.h
demos/embedded/fluidlauncher/pictureflow.cpp
demos/embedded/fluidlauncher/pictureflow.h
dist/README
dist/changes-3.0.0
dist/changes-3.0.0-beta1
dist/changes-4.3.0
doc/src/desktop-integration.qdoc
doc/src/development/designer-manual.qdoc
doc/src/distributingqt.qdoc
doc/src/examples-overview.qdoc
doc/src/examples.qdoc
doc/src/frameworks-technologies/dbus-adaptors.qdoc
doc/src/geometry.qdoc
doc/src/groups.qdoc
doc/src/index.qdoc
doc/src/objecttrees.qdoc
doc/src/platform-notes.qdoc
doc/src/plugins-howto.qdoc
doc/src/porting/porting4.qdoc
doc/src/porting4-obsoletedmechanism.qdocinc
doc/src/qt-webpages.qdoc
doc/src/qt3support.qdoc
doc/src/qtdbus.qdoc
doc/src/qtdesigner.qdoc
doc/src/qtgui.qdoc
doc/src/qtmain.qdoc
doc/src/qtopengl.qdoc
doc/src/qtsvg.qdoc
doc/src/qtuiloader.qdoc
doc/src/qundo.qdoc
doc/src/richtext.qdoc
doc/src/snippets/code/src_corelib_tools_qregexp.cpp
doc/src/snippets/code/src_qt3support_network_q3ftp.cpp
doc/src/snippets/qstring/main.cpp
doc/src/snippets/textdocument-blocks/xmlwriter.cpp
doc/src/snippets/textdocument-frames/xmlwriter.cpp
doc/src/snippets/textdocument-tables/xmlwriter.cpp
doc/src/tech-preview/known-issues.html
doc/src/topics.qdoc
doc/src/xml-processing/xml-processing.qdoc
examples/xml/saxbookmarks/jennifer.xbel
src/3rdparty/phonon/ds9/mediaobject.cpp
src/3rdparty/phonon/ds9/mediaobject.h
src/corelib/io/qurl.cpp
src/corelib/tools/qdumper.cpp
src/corelib/xml/qxmlstream.h
src/gui/embedded/qkbdpc101_qws.cpp
src/gui/embedded/qkbdsl5000_qws.cpp
src/gui/embedded/qkbdusb_qws.cpp
src/gui/embedded/qkbdvr41xx_qws.cpp
src/gui/embedded/qkbdyopy_qws.cpp
src/gui/embedded/qmousebus_qws.cpp
src/gui/embedded/qmousevr41xx_qws.cpp
src/gui/embedded/qmouseyopy_qws.cpp
src/gui/image/qpixmapcache.cpp
src/gui/kernel/qmotifdnd_x11.cpp
src/gui/painting/qpaintengine_d3d.cpp
src/gui/painting/qpaintengine_raster.cpp
src/gui/painting/qwindowsurface_d3d.cpp
src/gui/styles/qmacstyle_mac.mm
src/gui/text/qtextformat.cpp
src/gui/text/qtextobject_p.h
src/network/access/qhttp.cpp
src/opengl/gl2paintengineex/glgc_shader_source.h
src/opengl/gl2paintengineex/qglpexshadermanager.cpp
src/opengl/gl2paintengineex/qglpexshadermanager_p.h
src/opengl/gl2paintengineex/qglshader.cpp
src/opengl/gl2paintengineex/qglshader_p.h
src/plugins/codecs/kr/qeuckrcodec.cpp
src/plugins/kbddrivers/linuxis/linuxiskbdhandler.cpp
src/plugins/mousedrivers/linuxis/linuxismousehandler.cpp
src/qt3support/network/q3http.cpp
src/script/qscriptarray_p.h
src/script/qscriptasm_p.h
src/script/qscriptbuffer_p.h
src/script/qscriptclass.cpp
src/script/qscriptcompiler.cpp
src/script/qscriptcompiler_p.h
src/script/qscriptcontext.cpp
src/script/qscriptcontext_p.cpp
src/script/qscriptcontext_p.h
src/script/qscriptcontextfwd_p.h
src/script/qscriptecmaarray.cpp
src/script/qscriptecmaarray_p.h
src/script/qscriptecmaboolean.cpp
src/script/qscriptecmacore.cpp
src/script/qscriptecmadate.cpp
src/script/qscriptecmadate_p.h
src/script/qscriptecmaerror.cpp
src/script/qscriptecmaerror_p.h
src/script/qscriptecmafunction.cpp
src/script/qscriptecmafunction_p.h
src/script/qscriptecmaglobal.cpp
src/script/qscriptecmaglobal_p.h
src/script/qscriptecmamath.cpp
src/script/qscriptecmamath_p.h
src/script/qscriptecmanumber.cpp
src/script/qscriptecmanumber_p.h
src/script/qscriptecmaobject.cpp
src/script/qscriptecmaobject_p.h
src/script/qscriptecmaregexp.cpp
src/script/qscriptecmaregexp_p.h
src/script/qscriptecmastring.cpp
src/script/qscriptecmastring_p.h
src/script/qscriptengine.cpp
src/script/qscriptengine_p.cpp
src/script/qscriptengine_p.h
src/script/qscriptenginefwd_p.h
src/script/qscriptextenumeration.cpp
src/script/qscriptextenumeration_p.h
src/script/qscriptextqobject.cpp
src/script/qscriptextqobject_p.h
src/script/qscriptextvariant.cpp
src/script/qscriptfunction.cpp
src/script/qscriptfunction_p.h
src/script/qscriptgc_p.h
src/script/qscriptmember_p.h
src/script/qscriptobject_p.h
src/script/qscriptprettypretty.cpp
src/script/qscriptprettypretty_p.h
src/script/qscriptvalue.cpp
src/script/qscriptvalueimpl.cpp
src/script/qscriptvalueimpl_p.h
src/script/qscriptvalueimplfwd_p.h
src/script/qscriptvalueiteratorimpl.cpp
src/script/qscriptxmlgenerator.cpp
src/script/qscriptxmlgenerator_p.h
src/sql/drivers/sqlite/qsql_sqlite.cpp
src/svg/qsvghandler.cpp
src/svg/qsvgstyle.cpp
src/xmlpatterns/expr/qcastingplatform_p.h
src/xmlpatterns/iterators/qcachingiterator_p.h
src/xmlpatterns/parser/qquerytransformparser_p.h
tests/auto/q3uridrag/tst_q3uridrag.cpp
tests/auto/qcombobox/tst_qcombobox.cpp
tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp
tests/auto/qkeyevent/tst_qkeyevent.cpp
tests/auto/qmainwindow/tst_qmainwindow.cpp
tests/auto/qnetworkcookiejar/tst_qnetworkcookiejar.cpp
tests/auto/qsqltablemodel/tst_qsqltablemodel.cpp
tests/auto/qsslsocket/tst_qsslsocket.cpp
tests/auto/qurl/tst_qurl.cpp
tests/auto/qvariant/tst_qvariant.cpp
tests/auto/qwidget/tst_qwidget.cpp
tests/auto/uic/baseline/batchtranslation.ui
tests/auto/uic/baseline/batchtranslation.ui.h
tests/auto/uic/baseline/config.ui
tests/auto/uic/baseline/config.ui.h
tests/auto/uic/baseline/finddialog.ui
tests/auto/uic/baseline/finddialog.ui.h
tests/auto/uic/baseline/formwindowsettings.ui
tests/auto/uic/baseline/formwindowsettings.ui.h
tests/auto/uic/baseline/helpdialog.ui
tests/auto/uic/baseline/helpdialog.ui.h
tests/auto/uic/baseline/listwidgeteditor.ui
tests/auto/uic/baseline/listwidgeteditor.ui.h
tests/auto/uic/baseline/mainwindowbase.ui
tests/auto/uic/baseline/mainwindowbase.ui.h
tests/auto/uic/baseline/newactiondialog.ui
tests/auto/uic/baseline/newactiondialog.ui.h
tests/auto/uic/baseline/newform.ui
tests/auto/uic/baseline/newform.ui.h
tests/auto/uic/baseline/orderdialog.ui
tests/auto/uic/baseline/orderdialog.ui.h
tests/auto/uic/baseline/paletteeditor.ui
tests/auto/uic/baseline/paletteeditor.ui.h
tests/auto/uic/baseline/paletteeditoradvancedbase.ui
tests/auto/uic/baseline/paletteeditoradvancedbase.ui.h
tests/auto/uic/baseline/phrasebookbox.ui
tests/auto/uic/baseline/phrasebookbox.ui.h
tests/auto/uic/baseline/plugindialog.ui
tests/auto/uic/baseline/plugindialog.ui.h
tests/auto/uic/baseline/previewwidget.ui
tests/auto/uic/baseline/previewwidget.ui.h
tests/auto/uic/baseline/previewwidgetbase.ui
tests/auto/uic/baseline/previewwidgetbase.ui.h
tests/auto/uic/baseline/qfiledialog.ui
tests/auto/uic/baseline/qfiledialog.ui.h
tests/auto/uic/baseline/qtgradientdialog.ui
tests/auto/uic/baseline/qtgradientdialog.ui.h
tests/auto/uic/baseline/qtgradientviewdialog.ui
tests/auto/uic/baseline/qtgradientviewdialog.ui.h
tests/auto/uic/baseline/saveformastemplate.ui
tests/auto/uic/baseline/saveformastemplate.ui.h
tests/auto/uic/baseline/statistics.ui
tests/auto/uic/baseline/statistics.ui.h
tests/auto/uic/baseline/stringlisteditor.ui
tests/auto/uic/baseline/stringlisteditor.ui.h
tests/auto/uic/baseline/tabbedbrowser.ui
tests/auto/uic/baseline/tabbedbrowser.ui.h
tests/auto/uic/baseline/tablewidgeteditor.ui
tests/auto/uic/baseline/tablewidgeteditor.ui.h
tests/auto/uic/baseline/translatedialog.ui
tests/auto/uic/baseline/translatedialog.ui.h
tests/auto/uic/baseline/treewidgeteditor.ui
tests/auto/uic/baseline/treewidgeteditor.ui.h
tests/auto/uic/baseline/trpreviewtool.ui
tests/auto/uic/baseline/trpreviewtool.ui.h
tests/auto/uic3/baseline/previewwidget.ui
tests/auto/uic3/baseline/previewwidget.ui.4
tests/auto/uic3/baseline/previewwidgetbase.ui
tests/auto/uic3/baseline/previewwidgetbase.ui.4
tests/auto/uic3/baseline/qactivexselect.ui
tests/auto/uic3/baseline/qactivexselect.ui.4
tests/auto/uiloader/baseline/batchtranslation.ui
tests/auto/uiloader/baseline/config.ui
tests/auto/uiloader/baseline/finddialog.ui
tests/auto/uiloader/baseline/formwindowsettings.ui
tests/auto/uiloader/baseline/helpdialog.ui
tests/auto/uiloader/baseline/listwidgeteditor.ui
tests/auto/uiloader/baseline/mainwindowbase.ui
tests/auto/uiloader/baseline/newactiondialog.ui
tests/auto/uiloader/baseline/newform.ui
tests/auto/uiloader/baseline/orderdialog.ui
tests/auto/uiloader/baseline/paletteeditor.ui
tests/auto/uiloader/baseline/paletteeditoradvancedbase.ui
tests/auto/uiloader/baseline/phrasebookbox.ui
tests/auto/uiloader/baseline/plugindialog.ui
tests/auto/uiloader/baseline/previewwidget.ui
tests/auto/uiloader/baseline/previewwidgetbase.ui
tests/auto/uiloader/baseline/qfiledialog.ui
tests/auto/uiloader/baseline/qtgradientdialog.ui
tests/auto/uiloader/baseline/qtgradienteditor.ui
tests/auto/uiloader/baseline/qtgradientviewdialog.ui
tests/auto/uiloader/baseline/saveformastemplate.ui
tests/auto/uiloader/baseline/statistics.ui
tests/auto/uiloader/baseline/stringlisteditor.ui
tests/auto/uiloader/baseline/tabbedbrowser.ui
tests/auto/uiloader/baseline/tablewidgeteditor.ui
tests/auto/uiloader/baseline/translatedialog.ui
tests/auto/uiloader/baseline/treewidgeteditor.ui
tests/auto/uiloader/baseline/trpreviewtool.ui
tests/auto/windowsmobile/test/test.pro
tests/auto/xmlpatternsdiagnosticsts/test/tst_xmlpatternsdiagnosticsts.cpp
tools/doxygen/config/header.html
tools/doxygen/config/phonon.doxyfile
tools/installer/nsis/opensource.ini
tools/linguist/phrasebooks/polish.qph
tools/linguist/shared/cpp.cpp
tools/linguist/shared/ts.dtd
tools/qdoc3/test/assistant.qdocconf
tools/qdoc3/test/designer.qdocconf
tools/qdoc3/test/linguist.qdocconf
tools/qdoc3/test/qmake.qdocconf
tools/qdoc3/test/qt-build-docs.qdocconf
tools/qdoc3/test/qt-inc.qdocconf
tools/qdoc3/test/qt.qdocconf
tools/qvfb/qtopiakeysym.h
tools/qvfb/qvfbx11view.cpp
tools/qvfb/qvfbx11view.h
tools/qvfb/x11keyfaker.cpp
tools/xmlpatterns/main.cpp
tools/xmlpatterns/main.h
tools/xmlpatterns/qcoloringmessagehandler_p.h
tools/xmlpatterns/qcoloroutput.cpp
tools/xmlpatterns/qcoloroutput_p.h
translations/assistant_de.ts
translations/qt_ar.ts
translations/qt_da.ts
translations/qt_de.ts
translations/qt_fr.ts
translations/qt_ja_JP.ts
translations/qt_ru.ts
translations/qt_uk.ts
translations/qt_zh_CN.ts
util/qlalr/compress.cpp
util/qlalr/cppgenerator.cpp
util/qlalr/dotgraph.cpp
util/qlalr/grammar.cpp
util/qlalr/lalr.cpp
util/qlalr/main.cpp
util/qlalr/parsetable.cpp
util/qlalr/recognizer.cpp
Diffstat (limited to 'tests/auto/qsslsocket')
-rw-r--r-- | tests/auto/qsslsocket/tst_qsslsocket.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/auto/qsslsocket/tst_qsslsocket.cpp b/tests/auto/qsslsocket/tst_qsslsocket.cpp index ba5ef70..85ecf6b 100644 --- a/tests/auto/qsslsocket/tst_qsslsocket.cpp +++ b/tests/auto/qsslsocket/tst_qsslsocket.cpp @@ -181,6 +181,7 @@ private slots: void ignoreSslErrorsList(); void ignoreSslErrorsListWithSlot_data(); void ignoreSslErrorsListWithSlot(); + void readFromClosedSocket(); static void exitLoop() { @@ -1668,6 +1669,34 @@ void tst_QSslSocket::ignoreSslErrorsListWithSlot() QCOMPARE(socket.waitForEncrypted(10000), expectEncryptionSuccess); } +// make sure a closed socket has no bytesAvailable() +// related to https://bugs.webkit.org/show_bug.cgi?id=28016 +void tst_QSslSocket::readFromClosedSocket() +{ + QSslSocketPtr socket = newSocket(); + socket->ignoreSslErrors(); + socket->connectToHostEncrypted(QtNetworkSettings::serverName(), 443); + socket->ignoreSslErrors(); + socket->waitForConnected(); + socket->waitForEncrypted(); + // provoke a response by sending a request + socket->write("GET /gif/fluke.gif HTTP/1.1\n"); + socket->write("Host: "); + socket->write(QtNetworkSettings::serverName().toLocal8Bit().constData()); + socket->write("\n"); + socket->write("\n"); + socket->waitForBytesWritten(); + socket->waitForReadyRead(); + QVERIFY(socket->state() == QAbstractSocket::ConnectedState); + QVERIFY(socket->bytesAvailable()); + socket->close(); + QVERIFY(!socket->bytesAvailable()); + QVERIFY(!socket->bytesToWrite()); + socket->waitForDisconnected(); + QVERIFY(!socket->bytesAvailable()); + QVERIFY(!socket->bytesToWrite()); +} + #endif // QT_NO_OPENSSL QTEST_MAIN(tst_QSslSocket) |