facebook / facebook/chisel

pproperties command needs ObjC runtime

Abierto
#180 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
9.2k
Forks
790
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

1.5.0

Was trying to use `pproperties`:

```python
(lldb) pproperties $imageView
error: error: unknown type name 'objc_property_t'
error: use of undeclared identifier 'objc_property_t'
error: expected expression
error: unknown type name 'objc_property_attribute_t'
error: use of undeclared identifier 'objc_property_attribute_t'
error: expected expression
error: error: unknown type name 'objc_property_t'
error: use of undeclared identifier 'objc_property_t'
error: expected expression
error: unknown type name 'objc_property_attribute_t'
error: use of undeclared identifier 'objc_property_attribute_t'
error: expected expression
Traceback (most recent call last):
File "/usr/local/opt/chisel/libexec/fblldb.py", line 83, in runCommand
command.run(args, options)
File "/usr/local/Cellar/chisel/1.5.0/libexec/commands/FBClassDump.py", line 69, in run
printProperties(cls)
File "/usr/local/Cellar/chisel/1.5.0/libexec/commands/FBClassDump.py", line 187, in printProperties
props = getProperties(cls)
File "/usr/local/Cellar/chisel/1.5.0/libexec/commands/FBClassDump.py", line 326, in getProperties
return [Property(m) for m in propsJson]
TypeError: 'NoneType' object is not iterable
```

After importing the ObjectiveC runtime:

```python
(lldb) e @import ObjectiveC.runtime;
(lldb) pproperties $imageView
error: error: no matching function for call to 'object_getClass'
candidate function not viable: no known conversion from 'long' to '__strong id' for 1st argument
error: error: use of undeclared identifier 'None'
Traceback (most recent call last):
File "/usr/local/opt/chisel/libexec/fblldb.py", line 83, in runCommand
command.run(args, options)
File "/usr/local/Cellar/chisel/1.5.0/libexec/commands/FBClassDump.py", line 67, in run
cls = getClassFromArgument(arguments[0], options.clsname)
File "/usr/local/Cellar/chisel/1.5.0/libexec/commands/FBClassDump.py", line 167, in getClassFromArgument
if not isClassObject(cls):
File "/usr/local/Cellar/chisel/1.5.0/libexec/commands/FBClassDump.py", line 156, in isClassObject
return runtimeHelpers.class_isMetaClass(runtimeHelpers.object_getClass(arg))
File "/usr/local/opt/chisel/libexec/fblldbobjcruntimehelpers.py", line 37, in class_isMetaClass
return fb.evaluateBooleanExpression(command)
File "/usr/local/opt/chisel/libexec/fblldbbase.py", line 84, in evaluateBooleanExpression
return (int(evaluateIntegerExpression('(BOOL)(' + expression + ')', printErrors)) != 0)
File "/usr/local/opt/chisel/libexec/fblldbbase.py", line 76, in evaluateIntegerExpression
output = evaluateExpression('(int)(' + expression + ')', printErrors).replace('\'', '')
AttributeError: 'NoneType' object has no attribute 'replace'
```

Not sure what else is wrong, but shouldn't `pproperties` import the runtime if it uses it?

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.