mirror of
https://github.com/storytold/UE4-OSC.git
synced 2026-10-09 00:09:43 +00:00
bugfix: SendOsc crash if no address
This commit is contained in:
@@ -137,12 +137,25 @@ FOscDataElemStruct UOscFunctionLibrary::FromString(FName input)
|
|||||||
|
|
||||||
void UOscFunctionLibrary::SendOsc(FName Address, const TArray<FOscDataElemStruct> & Data, int32 TargetIndex)
|
void UOscFunctionLibrary::SendOsc(FName Address, const TArray<FOscDataElemStruct> & Data, int32 TargetIndex)
|
||||||
{
|
{
|
||||||
|
if(!Address.IsValid())
|
||||||
|
{
|
||||||
|
UE_LOG(LogOSC, Error, TEXT("Empty OSC address"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if(Address.GetDisplayNameEntry()->IsWide())
|
if(Address.GetDisplayNameEntry()->IsWide())
|
||||||
{
|
{
|
||||||
const auto tmp = Address.GetPlainNameString();
|
const auto tmp = Address.GetPlainNameString();
|
||||||
UE_LOG(LogOSC, Error, TEXT("Invalid OSC address \"%s\": ASCII only"), *tmp);
|
UE_LOG(LogOSC, Error, TEXT("Invalid OSC address \"%s\": ASCII only"), *tmp);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(Address.GetPlainANSIString()[0] != '/')
|
||||||
|
{
|
||||||
|
const auto tmp = Address.GetPlainNameString();
|
||||||
|
UE_LOG(LogOSC, Error, TEXT("Invalid OSC address \"%s\": must start with '/'"), *tmp);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
static_assert(sizeof(uint8) == sizeof(char), "Cannot cast uint8 to char");
|
static_assert(sizeof(uint8) == sizeof(char), "Cannot cast uint8 to char");
|
||||||
uint8 buffer[1024];
|
uint8 buffer[1024];
|
||||||
|
|||||||
Reference in New Issue
Block a user