alttester / alttester/AltTester-Unity-SDK

Setting a nested property results in error: Unable to cast object of type 'RuntimePropertyInfo' to type 'FieldInfo'

Aperta
#834 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
gitlab no version triaged
Lingua principale
C#
Stelle
121
Fork
24
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Setting a nested property results in error.

Scenario: Call set_component_property(component_name, 'field.Property.Property', value)

Recursively assigning values from the innermost property, AltUnity ignores the possibility of the intermediate property being of type RuntimePropertyInfo, and therefore ends up casting it to FieldInfo which results in the following error:

```
altunityrunner.altUnityExceptions.UnknownErrorException: error:unknownError
Unable to cast object of type 'RuntimePropertyInfo' to type 'FieldInfo'.
```

Code block that causes the issue:
```
AltUnityReflectionMethodsCommand.cs:setValueRecursive()

if (memberInfo.GetType().Equals(typeof(PropertyInfo)))
{
((PropertyInfo)memberInfo).SetValue(instance, valueObtained);
}
else
{
((FieldInfo)memberInfo).SetValue(instance, valueObtained);
}
```

---
You can find the original issue from GitLab [here](https://gitlab.com/altom/altunity/altunitytester/-/issues/857).

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.