From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ElUEl-0004Cb-Ra for qemu-devel@nongnu.org; Sun, 11 Dec 2005 11:39:49 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ElUEh-00049x-Cn for qemu-devel@nongnu.org; Sun, 11 Dec 2005 11:39:46 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ElUEg-000498-0F for qemu-devel@nongnu.org; Sun, 11 Dec 2005 11:39:42 -0500 Received: from [217.72.192.224] (helo=smtp06.web.de) by monty-python.gnu.org with esmtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) (Exim 4.34) id 1ElUGF-0000g8-Bl for qemu-devel@nongnu.org; Sun, 11 Dec 2005 11:41:19 -0500 Received: from [80.134.3.23] (helo=noname) by smtp06.web.de with asmtp (TLSv1:RC4-MD5:128) (WEB.DE 4.105 #340) id 1ElUE8-0002k5-00 for qemu-devel@nongnu.org; Sun, 11 Dec 2005 17:39:08 +0100 From: Detlef Riekenberg Content-Type: multipart/mixed; boundary="=-66xe+O/3SEIPy67cYGv5" Date: Sun, 11 Dec 2005 17:38:29 +0100 Message-Id: <1134319110.15101.47.camel@p4.LAN> Mime-Version: 1.0 Sender: wine.dev@web.de Subject: [Qemu-devel] Regression-Testing-Problems with qemu Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "qemu-devel@nongnu.org" --=-66xe+O/3SEIPy67cYGv5 Content-Type: text/plain Content-Transfer-Encoding: 7bit Hi. While doing some Regression-Testing for wine ("http://www.winehq.org"), I run into some Problems with qemu and win95/win98 as guest. When calling GetPrinterDriverDirectoryA with bad/incomplete Parameter, GetLastError() returns "0" (ERROR_SUCCESS) on qemu with win95 or win98 as guest, while vmware/win98 or native/win98 returns "87" (ERROR_INVALID_PARAMETER). Example: winspool.drv:info on http://test.winehq.org/data/200511161000/#Win98 host: Ubuntu linux 5.04 (Kernel: 2.6.10) qemu: 0.7.2 and cvs-snapshot 2005-11-20 guest: win98se (german) win95c (german) I stripped the failing Tests down to a short App. (Source attached, binary available on request) Different compilers where used: i686-mingw32msvc-gcc (GCC) 3.3.3 (other linux system) i586-mingw32msvc-gcc 3.4.2 (on my linux) For the short Test-App, i used the Pelles C-Compiler: pocc 3.00.10 (with wine on my linux) Any Ideas how to fix this? (More Problems with qemu exists, but for me, the bug above is important) -- By By ... ... Detlef --=-66xe+O/3SEIPy67cYGv5 Content-Disposition: attachment; filename=bad_result.c Content-Type: text/x-csrc; name=bad_result.c; charset=UTF-8 Content-Transfer-Encoding: 7bit /* * Display the bad results in qemu */ #include #include #include int main(int argc, char ** argv) { LPBYTE buffer = NULL; DWORD cbBuf = 0; DWORD pcbNeeded = 0; DWORD res; SetLastError(0x00dead00); res = GetPrinterDriverDirectoryA( NULL, NULL, 1, NULL, 0, &cbBuf); printf("first call returned 0x%x, size 0x%lx/%ld\n", res, cbBuf, cbBuf); if (!cbBuf) return 1; buffer = HeapAlloc(GetProcessHeap(), 0, cbBuf*2); if (buffer == NULL) { printf("No buffer (need %ld bytes)\n", cbBuf*2); return 1 ; } SetLastError(0x00dead00); res = GetPrinterDriverDirectoryA( NULL, NULL, 1, NULL, cbBuf, &pcbNeeded); printf("expected '0' with ERROR_INVALID_USER_BUFFER " "or '!=0' with ERROR_INVALID_PARAMETER " "got %d with lasterror == %ld\n", res, GetLastError()); SetLastError(0x00dead00); res = GetPrinterDriverDirectoryA( NULL, NULL, 1, NULL, cbBuf, NULL); printf("expected '0' with RPC_X_NULL_REF_POINTER " "or '!=0' with ERROR_INVALID_PARAMETER " "got %d with lasterror == %ld\n", res, GetLastError()); HeapFree(GetProcessHeap(), 0, buffer); return 0; } --=-66xe+O/3SEIPy67cYGv5--