diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c index 1abc8dc7c82..b0dc366f6b6 100644 --- a/dlls/d3dx9_36/effect.c +++ b/dlls/d3dx9_36/effect.c @@ -918,7 +918,6 @@ struct d3dx_parameter *get_parameter_by_name(struct d3dx9_base_effect *base, return NULL; } - /* Pass / technique annotations are not in the parameters tree. */ if (parameter->full_name) { name_len = strlen(name); @@ -948,9 +947,11 @@ struct d3dx_parameter *get_parameter_by_name(struct d3dx9_base_effect *base, return NULL; } + /* Pass / technique annotations are not stored in the parameters tree, + * do a linear search. */ count = parameter->member_count; - length = strcspn( name, "[.@" ); + length = strcspn( name, "[." ); part = name + length; for (i = 0; i < count; i++) @@ -969,9 +970,6 @@ struct d3dx_parameter *get_parameter_by_name(struct d3dx9_base_effect *base, case '.': return get_parameter_by_name(base, temp_parameter, part); - case '@': - return NULL; - case '[': return get_parameter_element_by_name(base, temp_parameter, part);