Jacek Caban (@jacek) commented about dlls/mshtml/dispex.c:
return TRUE;
}
+LONG dispex_ref_decr(DispatchEx *dispex) +{
- BOOL has_task_magic = FALSE;
- LONG task_magic, ref;
- if(dispex->info->desc->vtbl->get_task_magic) {
task_magic = dispex->info->desc->vtbl->get_task_magic(dispex);
has_task_magic = TRUE;
- }
That's very ad-hoc. dispex layer has no need to know about task magics, esp. in its ref-counting handling. On top of that, speculative `get_task_magic` calls regardless of if it's the last release or not is just ugly.