http://bugs.winehq.org/show_bug.cgi?id=31037
Bug #: 31037
Summary: Microsoft SQL Server 2005 Express Edition: SQL Server
System Configuration Checker fails (Win32_Processor
class table row count not set)
Product: Wine
Version: 1.5.7
Platform: x86
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: wmi&wbemprox
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: focht(a)gmx.net
Classification: Unclassified
Hello,
continuation of bug 30089
The app crashes while trying to retrieve "CpuStatus" property of
"Win32_Processor" class.
--- snip ---
Creating class instance Win32_Processor
CreateInstanceEnum Win32_Processor returned 0 (0x0)
Enumerating the first class of Win32_Processor
EnumClass of Win32_Processor returned 1 (0x1)
Getting property CpuStatus
<boom>
--- snip ---
"CpuStatus" property was implemented by commit
http://source.winehq.org/git/wine.git/commitdiff/661d7f19c98b72af18c9487a87…
Code:
http://source.winehq.org/git/wine.git/blob/661d7f19c98b72af18c9487a87fd5a5f…
--- snip ---
361 static void fill_processor( struct table *table )
362 {
363 static const WCHAR fmtW[] =
{'C','P','U','%','u',0};
364 WCHAR device_id[14];
365 struct record_processor *rec;
366 UINT i, offset = 0, count = get_processor_count();
367
368 if (!(table->data = heap_alloc( sizeof(*rec) * count ))) return;
369
370 for (i = 0; i < count; i++)
371 {
372 rec = (struct record_processor *)(table->data + offset);
373 rec->cpu_status = 1; /* CPU Enabled */
374 rec->manufacturer = processor_manufacturerW;
375 sprintfW( device_id, fmtW, i );
376 rec->device_id = heap_strdupW( device_id );
377 offset += sizeof(*rec);
378 }
379 }
--- snip ---
The table row count (number of processor items) is not set hence class object
iterator (next) will fail later, leading to crash.
With row count fixed, the crash is gone and the app encounters next WMI
insufficiency ;-)
Regards
--
Configure bugmail:
http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.