From 290c6d0f614825540c62ecbe6f57739ff389bd0d Mon Sep 17 00:00:00 2001
From: Nicolas Pope <nwpope@utu.fi>
Date: Tue, 11 Jun 2019 14:32:23 +0300
Subject: [PATCH] Fix for uninit scheme_

---
 components/net/cpp/src/peer.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/components/net/cpp/src/peer.cpp b/components/net/cpp/src/peer.cpp
index 94fbdc038..c9cf014fa 100644
--- a/components/net/cpp/src/peer.cpp
+++ b/components/net/cpp/src/peer.cpp
@@ -290,6 +290,9 @@ bool Peer::reconnect() {
 
 void Peer::_updateURI() {
 	sockaddr_storage addr;
+
+	scheme_ = ftl::URI::SCHEME_TCP;
+
 	int rsize = sizeof(sockaddr_storage);
 	if (getpeername(sock_, (sockaddr*)&addr, (socklen_t*)&rsize) == 0) {
 		char addrbuf[INET6_ADDRSTRLEN];
@@ -435,7 +438,7 @@ bool Peer::_data() {
 		}
 		disp_->dispatch(*this, obj);
 
-		if (recv_buf_.nonparsed_size() > 0 && scheme_ == ftl::URI::SCHEME_WS) {
+		if (scheme_ == ftl::URI::SCHEME_WS && recv_buf_.nonparsed_size() > 0) {
 			wsheader_type ws;
 			if (ws_parse(recv_buf_, ws) < 0) {
 				return false;
-- 
GitLab