Important Update:
- Implement Handle Address renaming: - Restructure JSON config, with address list and rename list - SelectableCore: - Add method GetHandleAddress() - lookup renamed handle - Add init values to all struct and classes declarations - Replace malloc()/strcpy() sequences with strdup()
This commit is contained in:
@@ -410,8 +410,7 @@ TDevice * CDeviceCore::AddDeviceType( const char * DeviceTypeName )
|
||||
else {
|
||||
*DeviceType = new TDevice;
|
||||
|
||||
(*DeviceType)->Type = (char *)malloc( strlen( DeviceTypeName )+1 );
|
||||
strcpy( (*DeviceType)->Type, DeviceTypeName );
|
||||
(*DeviceType)->Type = strdup( DeviceTypeName );
|
||||
|
||||
if (Log) Log->Message( LogLevel, dlMedium, "%s/%s: Added device type '%s'",
|
||||
ProcessName, Name, DeviceTypeName );
|
||||
@@ -454,20 +453,15 @@ TDevice * CDeviceCore::AddDevice( const char * DeviceName, const char * DeviceTy
|
||||
else {
|
||||
*Device = new TDevice;
|
||||
|
||||
(*Device)->Name = (char *)malloc( strlen( DeviceName )+1 );
|
||||
strcpy( (*Device)->Name, DeviceName );
|
||||
|
||||
(*Device)->ID = DeviceID;
|
||||
(*Device)->Name = strdup( DeviceName );
|
||||
(*Device)->ID = DeviceID;
|
||||
|
||||
if (DeviceAddress) {
|
||||
(*Device)->Address = (char *)malloc( strlen( DeviceAddress )+1 );
|
||||
strcpy( (*Device)->Address, DeviceAddress );
|
||||
(*Device)->Address = strdup( DeviceAddress );
|
||||
}
|
||||
|
||||
if (DeviceType && *DeviceType) {
|
||||
(*Device)->Type = (char *)malloc( strlen( DeviceType )+1 );
|
||||
strcpy( (*Device)->Type, DeviceType );
|
||||
|
||||
(*Device)->Type = strdup( DeviceType );
|
||||
(*Device)->Template = GetDeviceType( DeviceType );
|
||||
}
|
||||
|
||||
@@ -540,8 +534,7 @@ TDeviceParam * CDeviceCore::AddDeviceParam( TDevice * Device, const char * Param
|
||||
*Param = new TDeviceParam;
|
||||
|
||||
// Set Name
|
||||
(*Param)->Name = (char *)malloc( strlen( ParamName )+1 );
|
||||
strcpy( (*Param)->Name, ParamName );
|
||||
(*Param)->Name = strdup( ParamName );
|
||||
(*Param)->DataType = DataType;
|
||||
(*Param)->Device = Device;
|
||||
|
||||
@@ -683,9 +676,7 @@ TDeviceParamGroup * CDeviceCore::AddParamGroup( TDevice * Device, const char * G
|
||||
else {
|
||||
*ParamGroup = new TDeviceParamGroup;
|
||||
|
||||
(*ParamGroup)->Name = (char *)malloc( strlen( GroupName )+1 );
|
||||
strcpy( (*ParamGroup)->Name, GroupName );
|
||||
|
||||
(*ParamGroup)->Name = strdup( GroupName );
|
||||
(*ParamGroup)->Device = Device;
|
||||
|
||||
if (Log) Log->Message( LogLevel, dlMedium, "%s/%s: Added param group '%s/%s'",
|
||||
@@ -1197,8 +1188,7 @@ bool CDeviceCore::SetValue( TDeviceParam * Param, const char * Value, const int
|
||||
{
|
||||
// Ensure string is zero terminated
|
||||
if (Value[Len] != 0) {
|
||||
TempStr = (char *)malloc( Len+1 );
|
||||
memcpy( TempStr, Value, Len );
|
||||
TempStr = strndup( Value, Len );
|
||||
TempStr[Len] = 0;
|
||||
UseTempStr = true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user