From 6253d49e152101282d04dea6ef66c8525f3489b8 Mon Sep 17 00:00:00 2001 From: Hans Leidekker Date: Wed, 22 May 2013 10:07:26 +0200 Subject: [PATCH] wbemprox: Fill tables at latest possible moment. --- dlls/wbemprox/query.c | 4 +++- dlls/wbemprox/table.c | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/dlls/wbemprox/query.c b/dlls/wbemprox/query.c index 1850368d2d1..8ac42cc1482 100644 --- a/dlls/wbemprox/query.c +++ b/dlls/wbemprox/query.c @@ -245,7 +245,9 @@ static HRESULT execute_view( struct view *view ) { UINT i, j = 0, len; - if (!view->table || !view->table->num_rows) return S_OK; + if (!view->table) return S_OK; + if (view->table->fill && !view->table->data) view->table->fill( view->table ); + if (!view->table->num_rows) return S_OK; len = min( view->table->num_rows, 16 ); if (!(view->result = heap_alloc( len * sizeof(UINT) ))) return E_OUTOFMEMORY; diff --git a/dlls/wbemprox/table.c b/dlls/wbemprox/table.c index c114e532d82..126dc0a6140 100644 --- a/dlls/wbemprox/table.c +++ b/dlls/wbemprox/table.c @@ -336,7 +336,6 @@ struct table *grab_table( const WCHAR *name ) { if (!strcmpiW( table->name, name )) { - if (table->fill && !table->data) table->fill( table ); TRACE("returning %p\n", table); return addref_table( table ); }