Important Updates:
- FunctionCore:
- Output() returns largest no of bytes written to linked input
- SelectableCore:
- Auto-manage:
- Add AutoManage param -> Persistent
- Will automatic open port if written to when Auto-Manage enabled
- Will keep port open (re-open if closed) if Persistent = true
- DNS resolve:
- Set AddressFailed if port could not open/bind
- Only use next resolved address if current address failed
This commit is contained in:
@@ -469,7 +469,9 @@ int CFunctionCore::Output( const char * ChannelName, const char * Data, int Len
|
||||
|
||||
int CFunctionCore::Output( const TChannel * Channel, const char * Data, int Len )
|
||||
{
|
||||
TChannelLink * OutChannel = NULL;
|
||||
TChannelLink * OutChannel = NULL;
|
||||
int TempLen = 0;
|
||||
int OutLen = 0;
|
||||
|
||||
// Validate
|
||||
if (!Channel || !Data) {
|
||||
@@ -491,12 +493,13 @@ int CFunctionCore::Output( const TChannel * Channel, const char * Data, int Len
|
||||
}
|
||||
OutChannel = Channel->FirstOutput;
|
||||
while (OutChannel) {
|
||||
OutChannel->Function->Input( OutChannel->Name, Data, Len );
|
||||
TempLen = OutChannel->Function->Input( OutChannel->Name, Data, Len );
|
||||
OutLen = (TempLen > OutLen)? TempLen : OutLen;
|
||||
OutChannel = OutChannel->Next;
|
||||
}
|
||||
|
||||
// Return processed bytes
|
||||
return Len;
|
||||
return OutLen;
|
||||
}
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
|
||||
Reference in New Issue
Block a user