2012-03-28 18 views
6

que tienen esta línea de código:FORWARD_NULL después de quitar la nulidad?

this.Path = pathLookUpLocation.GetValue(RegLookupKey, null).ToString(); 

cuando corro herramienta de análisis estático (Coverity) en mi código consigo un FORWARD_NULL aquí, diciendo que estoy aquí dereferencing nula. Tengo problemas para entender lo que eso significa y cómo voy a solucionarlo.

this.Path es una cadena, pathLookUpLocation es un RegistryKey, RegLookupKey es una cadena.

+0

Sería de gran ayuda si usted podría darnos algunas pistas sobre los tipos involucrados ... –

Respuesta

4

supongo pathLookUpLocation es de tipo RegistryKey.

El motivo de este mensaje es que su código arrojará un NullReferenceException si no se encuentra el valor con la clave especificada en RegLookupKey. Esto sucede, porque pasa null como el segundo parámetro al GetValue. El segundo parámetro es el valor predeterminado que se devuelve si no se puede encontrar la clave.

Fix it cambiándola a string.Empty:

this.Path = pathLookUpLocation.GetValue(RegLookupKey, string.Empty).ToString(); 
+0

Gracias Daniel, marcará como respuesta cuando pueda! – DukeOfMarmalade

Cuestiones relacionadas