https://bugs.winehq.org/show_bug.cgi?id=40945
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #4 from Zebediah Figura z.figura12@gmail.com --- (In reply to Gijs Vermeulen from comment #3)
This is still present in wine-5.14.
I've debugged this a bit and I think there are multiple issues here.
- The installer calls IWbemServices::GetObject to query "__NAMESPACE".
get_object calls create_instance_enum which calls exec_query. This all succeeds, but will cause view->table_count to be 0.
It seems IWbemServices::GetObject should maybe use get_propval to go to get_system_propval so the right things are returned.
- The actual cause of the crash is that after create_instance_enum returns,
get_object calls create_class_object and the app will use the returned IWbemClassObject to call IWbemClassObject::SpawnInstance. SpawnInstance calls create_record with a NULL table. Since table->num_cols is 0, record->fields won't be properly alloc'd, ultimately leading to a crash.
Oh hey, I may have just fixed that:
https://source.winehq.org/git/wine.git/commitdiff/a0c9aab5deffcdf30826574ba3...