MCPcopy Create free account
hub / github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings / OnNetworkReply

Method OnNetworkReply

src/overlaycontroller.cpp:1639–1717  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1637}
1638
1639void OverlayController::OnNetworkReply( QNetworkReply* reply )
1640{
1641 if ( reply->error() == QNetworkReply::NoError )
1642 {
1643 QByteArray replyByteData = reply->readAll();
1644 LOG( INFO ) << "Version Check: Recieved Data: " << replyByteData;
1645 QJsonParseError parseError;
1646 m_remoteVersionJsonDocument
1647 = QJsonDocument::fromJson( replyByteData, &parseError );
1648 if ( parseError.error == QJsonParseError::NoError )
1649 {
1650 m_remoteVersionJsonObject = m_remoteVersionJsonDocument.object();
1651 m_remoteVersionMajor
1652 = m_remoteVersionJsonObject.value( "major" ).toInt();
1653 m_remoteVersionMinor
1654 = m_remoteVersionJsonObject.value( "minor" ).toInt();
1655 m_remoteVersionPatch
1656 = m_remoteVersionJsonObject.value( "patch" ).toInt();
1657 m_updateMessage
1658 = m_remoteVersionJsonObject.value( "updateMessage" ).toString();
1659 m_optionalMessage
1660 = m_remoteVersionJsonObject.value( "optionalMessage" )
1661 .toString();
1662
1663 // this is a little convoluted to ensure if our local version is
1664 // somehow higher than remote, it doesn't detect an update from
1665 // just higher remote "minor" or "patch" values.
1666 if ( ( m_remoteVersionMajor > m_localVersionMajor )
1667 || ( m_remoteVersionMajor == m_localVersionMajor
1668 && m_remoteVersionMinor > m_localVersionMinor )
1669 || ( m_remoteVersionMajor == m_localVersionMajor
1670 && m_remoteVersionMinor == m_localVersionMinor
1671 && m_remoteVersionPatch > m_localVersionPatch ) )
1672 {
1673 setNewVersionDetected( true );
1674 if ( m_updateMessage.length() > 0 )
1675 {
1676 setVersionCheckText( m_updateMessage );
1677 }
1678 else
1679 {
1680 setVersionCheckText(
1681 "Newer version ("
1682 + QString::number( m_remoteVersionMajor ) + "."
1683 + QString::number( m_remoteVersionMinor ) + "."
1684 + QString::number( m_remoteVersionPatch )
1685 + ") available." );
1686 }
1687 LOG( INFO )
1688 << "Version Check: Newer version (" << m_remoteVersionMajor
1689 << "." << m_remoteVersionMinor << "."
1690 << m_remoteVersionPatch << ") available.";
1691 }
1692 else
1693 {
1694 if ( m_optionalMessage.length() > 0 )
1695 {
1696 setVersionCheckText( m_optionalMessage );

Callers

nothing calls this directly

Calls 1

valueMethod · 0.45

Tested by

no test coverage detected