Hopelijk laatste socket fix
This commit is contained in:
parent
7b811219bd
commit
bf0b976999
3 changed files with 7 additions and 8 deletions
|
@ -160,7 +160,7 @@ namespace Connector_HTTP{
|
||||||
|
|
||||||
while (conn.connected() && !FLV::Parse_Error){
|
while (conn.connected() && !FLV::Parse_Error){
|
||||||
//only parse input if available or not yet init'ed
|
//only parse input if available or not yet init'ed
|
||||||
if (HTTP_R.Read(conn)){
|
if (HTTP_R.Read(conn, ready4data)){
|
||||||
handler = HANDLER_PROGRESSIVE;
|
handler = HANDLER_PROGRESSIVE;
|
||||||
if ((HTTP_R.url.find("Seg") != std::string::npos) && (HTTP_R.url.find("Frag") != std::string::npos)){handler = HANDLER_FLASH;}
|
if ((HTTP_R.url.find("Seg") != std::string::npos) && (HTTP_R.url.find("Frag") != std::string::npos)){handler = HANDLER_FLASH;}
|
||||||
if (HTTP_R.url.find("f4m") != std::string::npos){handler = HANDLER_FLASH;}
|
if (HTTP_R.url.find("f4m") != std::string::npos){handler = HANDLER_FLASH;}
|
||||||
|
@ -174,7 +174,7 @@ namespace Connector_HTTP{
|
||||||
printf("Sending crossdomain.xml file\n");
|
printf("Sending crossdomain.xml file\n");
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
if(handler == HANDLER_FLASH){
|
if (handler == HANDLER_FLASH){
|
||||||
if (HTTP_R.url.find("f4m") == std::string::npos){
|
if (HTTP_R.url.find("f4m") == std::string::npos){
|
||||||
Movie = HTTP_R.url.substr(1);
|
Movie = HTTP_R.url.substr(1);
|
||||||
Movie = Movie.substr(0,Movie.find("/"));
|
Movie = Movie.substr(0,Movie.find("/"));
|
||||||
|
|
|
@ -128,12 +128,11 @@ void HTTP::Parser::SetVar(std::string i, std::string v){
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Attempt to read a whole HTTP request or response from DDV::Socket sock.
|
/// Attempt to read a whole HTTP request or response from DDV::Socket sock.
|
||||||
|
/// \param sock The socket to use.
|
||||||
|
/// \param nonblock When true, will not block even if the socket is blocking.
|
||||||
/// \return True of a whole request or response was read, false otherwise.
|
/// \return True of a whole request or response was read, false otherwise.
|
||||||
bool HTTP::Parser::Read(DDV::Socket & sock){
|
bool HTTP::Parser::Read(DDV::Socket & sock, bool nonblock){
|
||||||
//returned true als hele http packet gelezen is
|
if (nonblock && (sock.ready() < 1)){return parse();}
|
||||||
int r = 0;
|
|
||||||
int b = 0;
|
|
||||||
char buffer[500];
|
|
||||||
sock.read(HTTPbuffer);
|
sock.read(HTTPbuffer);
|
||||||
return parse();
|
return parse();
|
||||||
}//HTTPReader::ReadSocket
|
}//HTTPReader::ReadSocket
|
||||||
|
|
|
@ -14,7 +14,7 @@ namespace HTTP{
|
||||||
class Parser{
|
class Parser{
|
||||||
public:
|
public:
|
||||||
Parser();
|
Parser();
|
||||||
bool Read(DDV::Socket & sock);
|
bool Read(DDV::Socket & sock, bool nonblock = true);
|
||||||
bool Read(FILE * F);
|
bool Read(FILE * F);
|
||||||
std::string GetHeader(std::string i);
|
std::string GetHeader(std::string i);
|
||||||
std::string GetVar(std::string i);
|
std::string GetVar(std::string i);
|
||||||
|
|
Loading…
Add table
Reference in a new issue