mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-22 01:11:42 +00:00
Move common utility classes to wpiutil library. (#79)
This is a breaking change to dependencies that use the static ntcore library. Unless the wpiutil library is also linked, linker errors will result. This does not affect the shared ntcore library.
This commit is contained in:
26
src/support/raw_socket_istream.cpp
Normal file
26
src/support/raw_socket_istream.cpp
Normal file
@@ -0,0 +1,26 @@
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Copyright (c) FIRST 2015. All Rights Reserved. */
|
||||
/* Open Source Software - may be modified and shared by FRC teams. The code */
|
||||
/* must be accompanied by the FIRST BSD license file in the root directory of */
|
||||
/* the project. */
|
||||
/*----------------------------------------------------------------------------*/
|
||||
|
||||
#include "support/raw_socket_istream.h"
|
||||
|
||||
using namespace wpi;
|
||||
|
||||
bool raw_socket_istream::read(void* data, std::size_t len) {
|
||||
char* cdata = static_cast<char*>(data);
|
||||
std::size_t pos = 0;
|
||||
|
||||
while (pos < len) {
|
||||
NetworkStream::Error err;
|
||||
std::size_t count =
|
||||
m_stream.receive(&cdata[pos], len - pos, &err, m_timeout);
|
||||
if (count == 0) return false;
|
||||
pos += count;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void raw_socket_istream::close() { m_stream.close(); }
|
||||
Reference in New Issue
Block a user