Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fb949d5d authored by Andreas Huber's avatar Andreas Huber Committed by Gerrit Code Review
Browse files

Merge "Fix crash in MyHandler when sockets are not set."

parents f36ae7ca b6f76424
Loading
Loading
Loading
Loading
+0 −1
Original line number Original line Diff line number Diff line
@@ -483,7 +483,6 @@ void ARTSPConnection::onReceiveResponse() {
    FD_SET(mSocket, &rs);
    FD_SET(mSocket, &rs);


    int res = select(mSocket + 1, &rs, NULL, NULL, &tv);
    int res = select(mSocket + 1, &rs, NULL, NULL, &tv);
    CHECK_GE(res, 0);


    if (res == 1) {
    if (res == 1) {
        MakeSocketBlocking(mSocket, true);
        MakeSocketBlocking(mSocket, true);
+22 −16
Original line number Original line Diff line number Diff line
@@ -686,6 +686,7 @@ struct MyHandler : public AHandler {
                        i = response->mHeaders.indexOfKey("transport");
                        i = response->mHeaders.indexOfKey("transport");
                        CHECK_GE(i, 0);
                        CHECK_GE(i, 0);


                        if (track->mRTPSocket != -1 && track->mRTCPSocket != -1) {
                            if (!track->mUsingInterleavedTCP) {
                            if (!track->mUsingInterleavedTCP) {
                                AString transport = response->mHeaders.valueAt(i);
                                AString transport = response->mHeaders.valueAt(i);


@@ -703,6 +704,9 @@ struct MyHandler : public AHandler {
                                    notify, track->mUsingInterleavedTCP);
                                    notify, track->mUsingInterleavedTCP);


                            mSetupTracksSuccessful = true;
                            mSetupTracksSuccessful = true;
                        } else {
                            result = BAD_VALUE;
                        }
                    }
                    }
                }
                }


@@ -724,7 +728,7 @@ struct MyHandler : public AHandler {
                }
                }


                ++index;
                ++index;
                if (index < mSessionDesc->countTracks()) {
                if (result == OK && index < mSessionDesc->countTracks()) {
                    setupTrack(index);
                    setupTrack(index);
                } else if (mSetupTracksSuccessful) {
                } else if (mSetupTracksSuccessful) {
                    ++mKeepAliveGeneration;
                    ++mKeepAliveGeneration;
@@ -1555,6 +1559,8 @@ private:
        info->mUsingInterleavedTCP = false;
        info->mUsingInterleavedTCP = false;
        info->mFirstSeqNumInSegment = 0;
        info->mFirstSeqNumInSegment = 0;
        info->mNewSegment = true;
        info->mNewSegment = true;
        info->mRTPSocket = -1;
        info->mRTCPSocket = -1;
        info->mRTPAnchor = 0;
        info->mRTPAnchor = 0;
        info->mNTPAnchorUs = -1;
        info->mNTPAnchorUs = -1;
        info->mNormalPlayTimeRTP = 0;
        info->mNormalPlayTimeRTP = 0;