7
7
void FCDynamicProperty::InitProperty (const FProperty *InProperty)
8
8
{
9
9
Name = TCHAR_TO_UTF8 (*(InProperty->GetName ()));
10
+ Name = GetConstName (Name);
10
11
ElementSize = InProperty->ElementSize ;
11
12
Offset_Internal = InProperty->GetOffset_ForInternal ();
12
13
Flags = InProperty->GetPropertyFlags ();
13
14
Property = InProperty;
14
15
bOuter = InProperty->HasAnyPropertyFlags (CPF_OutParm);
15
16
16
17
Type = GetScriptPropertyType (Property);
17
- GetScriptPropertyClassName ( ClassName, Type, InProperty);
18
+ ClassName = GetScriptPropertyClassName ( Type, InProperty);
18
19
19
20
InitDynamicPropertyWriteFunc (this , Type);
20
21
InitDynamicPropertyReadFunc (this , Type);
@@ -23,6 +24,7 @@ void FCDynamicProperty::InitProperty(const FProperty *InProperty)
23
24
void FCDynamicFunction::InitParam (UFunction *InFunction)
24
25
{
25
26
Name = TCHAR_TO_UTF8 (*(InFunction->GetName ()));
27
+ Name = GetConstName (Name);
26
28
Function = InFunction;
27
29
ParmsSize = InFunction->ParmsSize ;
28
30
m_Property.resize (InFunction->NumParms );
@@ -50,7 +52,7 @@ void FCDynamicFunction::InitParam(UFunction *InFunction)
50
52
}
51
53
if (LatentPropertyIndex == -1 )
52
54
{
53
- if ( FCProperty->Name == " LatentInfo" )
55
+ if ( strcmp ( FCProperty->Name , " LatentInfo" ) == 0 )
54
56
{
55
57
LatentPropertyIndex = Index;
56
58
}
@@ -77,7 +79,7 @@ void FCDynamicFunction::InitParam(UFunction *InFunction)
77
79
}
78
80
79
81
80
- #if ENGINE_MINOR_VERSION < 25
82
+ #if OLD_UE_ENGINE
81
83
struct FFakeProperty : public UField
82
84
#else
83
85
struct FFakeProperty : public FField
@@ -170,15 +172,15 @@ FCDynamicClassDesc &FCDynamicClassDesc::CopyDesc(const FCDynamicClassDesc &other
170
172
{
171
173
FCDynamicProperty *FCProperty = new FCDynamicProperty (*(other.m_Property [i]));
172
174
m_Property[i] = FCProperty;
173
- m_Name2Property[FCProperty->Name . c_str () ] = FCProperty;
174
- m_Fileds[FCProperty->Name . c_str () ] = FCProperty;
175
+ m_Name2Property[FCProperty->Name ] = FCProperty;
176
+ m_Fileds[FCProperty->Name ] = FCProperty;
175
177
}
176
178
m_Functions.clear ();
177
179
for (CDynamicFunctionNameMap::const_iterator it = other.m_Functions .begin (); it != other.m_Functions .end (); ++it)
178
180
{
179
181
FCDynamicFunction *Func = new FCDynamicFunction (*(it->second ));
180
- m_Functions[Func->Name . c_str () ] = Func;
181
- m_Fileds[Func->Name . c_str () ] = Func;
182
+ m_Functions[Func->Name ] = Func;
183
+ m_Fileds[Func->Name ] = Func;
182
184
}
183
185
m_LibFields.clear ();
184
186
for (CDynamicFieldNameMap::const_iterator it = other.m_LibFields .begin (); it != other.m_LibFields .end (); ++it)
@@ -198,6 +200,7 @@ void FCDynamicClassDesc::OnRegisterStruct(UStruct *Struct, void *Context)
198
200
if (Super)
199
201
{
200
202
m_SuperName = TCHAR_TO_UTF8 (*(Super->GetName ()));
203
+ m_SuperName = GetConstName (m_SuperName);
201
204
// OnRegisterStruct(Super);
202
205
}
203
206
m_Class = Cast<UClass>(Struct);
@@ -227,7 +230,7 @@ void FCDynamicClassDesc::OnAddStructMember(UStruct* Struct, void* Context)
227
230
FCProperty->PropertyIndex = m_Property.size ();
228
231
FCProperty->bOuter = false ;
229
232
230
- const char * FieldName = FCProperty->Name . c_str () ;
233
+ const char * FieldName = FCProperty->Name ;
231
234
m_Property.push_back (FCProperty);
232
235
m_Name2Property[FieldName] = FCProperty;
233
236
m_Fileds[FieldName] = FCProperty;
@@ -241,7 +244,7 @@ void FCDynamicClassDesc::OnAddStructMember(UStruct* Struct, void* Context)
241
244
{
242
245
FCDynamicFunction* DynamicFunction = new FCDynamicFunction ();
243
246
DynamicFunction->InitParam (Function);
244
- const char * FieldName = DynamicFunction->Name . c_str () ;
247
+ const char * FieldName = DynamicFunction->Name ;
245
248
m_Functions[FieldName] = DynamicFunction;
246
249
m_Fileds[FieldName] = DynamicFunction;
247
250
}
@@ -278,8 +281,8 @@ FCDynamicFunction* FCDynamicClassDesc::RegisterUEFunc(const char *pcsFuncName)
278
281
FCDynamicFunction* DynamicFunction = new FCDynamicFunction ();
279
282
DynamicFunction->InitParam (Function);
280
283
// DynamicFunction->Name = pcsFuncName;
281
- m_Functions[DynamicFunction->Name . c_str () ] = DynamicFunction;
282
- m_Fileds[DynamicFunction->Name . c_str () ] = DynamicFunction;
284
+ m_Functions[DynamicFunction->Name ] = DynamicFunction;
285
+ m_Fileds[DynamicFunction->Name ] = DynamicFunction;
283
286
284
287
return DynamicFunction;
285
288
}
@@ -296,7 +299,7 @@ FCDynamicFunction* FCDynamicClassDesc::RegisterFunc(const char *pcsFuncName)
296
299
FCDynamicFunction *DynamicFunction = RegisterUEFunc (pcsFuncName);
297
300
if (!DynamicFunction)
298
301
{
299
- UE_LOG (LogFCScript, Warning, TEXT (" failed register function: %s, class name: %s" ), UTF8_TO_TCHAR (pcsFuncName), UTF8_TO_TCHAR (m_UEClassName. c_str () ));
302
+ UE_LOG (LogFCScript, Warning, TEXT (" failed register function: %s, class name: %s" ), UTF8_TO_TCHAR (pcsFuncName), UTF8_TO_TCHAR (m_UEClassName));
300
303
}
301
304
return DynamicFunction;
302
305
}
@@ -309,9 +312,9 @@ FCDynamicField* FCDynamicClassDesc::RegisterWrapLibFunction(const char* pcsFuncN
309
312
return itFiled->second ;
310
313
}
311
314
FCDynamicWrapLibFunction* LibField = new FCDynamicWrapLibFunction (InGetFunc, InSetFunc);
312
- LibField->Name = pcsFuncName;
313
- m_LibFields[LibField->Name . c_str () ] = LibField;
314
- m_Fileds[LibField->Name . c_str () ] = LibField;
315
+ LibField->Name = GetConstName ( pcsFuncName) ;
316
+ m_LibFields[LibField->Name ] = LibField;
317
+ m_Fileds[LibField->Name ] = LibField;
315
318
return LibField;
316
319
}
317
320
@@ -323,9 +326,9 @@ FCDynamicField* FCDynamicClassDesc::RegisterWrapLibAttrib(const char* pcsFuncNam
323
326
return itFiled->second ;
324
327
}
325
328
FCDynamicWrapLibAttrib* LibField = new FCDynamicWrapLibAttrib (InGetFunc, InSetFunc);
326
- LibField->Name = pcsFuncName;
327
- m_LibFields[LibField->Name . c_str () ] = LibField;
328
- m_Fileds[LibField->Name . c_str () ] = LibField;
329
+ LibField->Name = GetConstName ( pcsFuncName) ;
330
+ m_LibFields[LibField->Name ] = LibField;
331
+ m_Fileds[LibField->Name ] = LibField;
329
332
return LibField;
330
333
}
331
334
// ---------------------------------------------------------------------------
@@ -422,10 +425,11 @@ FCDynamicClassDesc* FCScriptContext::RegisterUClass(const char *UEClassName)
422
425
NameOffset = 0 ;
423
426
}
424
427
428
+ UEClassName = GetConstName (UEClassName);
429
+
425
430
FCDynamicClassDesc *ScriptClassDesc = new FCDynamicClassDesc ();
426
431
ScriptClassDesc->m_UEClassName = UEClassName;
427
432
ScriptClassDesc->OnRegisterStruct (Struct, this );
428
- UEClassName = ScriptClassDesc->m_UEClassName .c_str ();
429
433
430
434
m_ClassNameMap[UEClassName] = ScriptClassDesc;
431
435
m_StructMap[Struct] = ScriptClassDesc;
@@ -450,9 +454,10 @@ FCDynamicClassDesc* FCScriptContext::RegisterUStruct(UStruct *Struct)
450
454
UEClassName += Struct->GetName ();
451
455
FCDynamicClassDesc *ScriptClassDesc = new FCDynamicClassDesc ();
452
456
ScriptClassDesc->m_UEClassName = TCHAR_TO_UTF8 (*UEClassName);
457
+ ScriptClassDesc->m_UEClassName = GetConstName (ScriptClassDesc->m_UEClassName );
453
458
ScriptClassDesc->OnRegisterStruct (Struct, this );
454
459
455
- const char * ClassName = ScriptClassDesc->m_UEClassName . c_str () ;
460
+ const char * ClassName = ScriptClassDesc->m_UEClassName ;
456
461
m_ClassNameMap[ClassName] = ScriptClassDesc;
457
462
m_StructMap[Struct] = ScriptClassDesc;
458
463
0 commit comments