From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1H6JWA-00072o-KB for qemu-devel@nongnu.org; Sun, 14 Jan 2007 23:32:22 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1H6JW9-00072X-AN for qemu-devel@nongnu.org; Sun, 14 Jan 2007 23:32:22 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1H6JW9-00072U-8V for qemu-devel@nongnu.org; Sun, 14 Jan 2007 23:32:21 -0500 Received: from [211.5.2.77] (helo=nm01omta017.dion.ne.jp) by monty-python.gnu.org with smtp (Exim 4.52) id 1H6JW8-0002aK-Dy for qemu-devel@nongnu.org; Sun, 14 Jan 2007 23:32:20 -0500 Message-ID: <000a01c7385e$261944e0$0464a8c0@athlon> From: "Kazu" Subject: [Qemu-devel][PATCH] CD-ROM read-only fix for win32 Date: Mon, 15 Jan 2007 13:32:21 +0900 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0007_01C738A9.95BE3E90" 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 This is a multi-part message in MIME format. ------=_NextPart_000_0007_01C738A9.95BE3E90 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit Hi, When a file has a read-only attribute for its property, the program doesn't boot. An attached patch fixes it. For example, read-only CD-ROM file can be used. It also fixes the problem that restricted user can't access host's CD-ROM drive. Thanks, Kazu ------=_NextPart_000_0007_01C738A9.95BE3E90 Content-Type: application/octet-stream; name="qemu-20070114-cdrom.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="qemu-20070114-cdrom.patch" Index: block-raw.c=0A= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=0A= RCS file: /sources/qemu/qemu/block-raw.c,v=0A= retrieving revision 1.16=0A= diff -u -r1.16 block-raw.c=0A= --- block-raw.c 7 Jan 2007 22:43:30 -0000 1.16=0A= +++ block-raw.c 14 Jan 2007 05:07:17 -0000=0A= @@ -914,8 +914,13 @@=0A= s->hfile =3D CreateFile(filename, access_flags, =0A= FILE_SHARE_READ, NULL,=0A= create_flags, overlapped, NULL);=0A= - if (s->hfile =3D=3D INVALID_HANDLE_VALUE) =0A= + if (s->hfile =3D=3D INVALID_HANDLE_VALUE) {=0A= + int err =3D GetLastError();=0A= +=0A= + if (err =3D=3D ERROR_ACCESS_DENIED)=0A= + return -EACCES;=0A= return -1;=0A= + }=0A= return 0;=0A= }=0A= =0A= @@ -1278,8 +1283,13 @@=0A= s->hfile =3D CreateFile(filename, access_flags, =0A= FILE_SHARE_READ, NULL,=0A= create_flags, overlapped, NULL);=0A= - if (s->hfile =3D=3D INVALID_HANDLE_VALUE) =0A= + if (s->hfile =3D=3D INVALID_HANDLE_VALUE) {=0A= + int err =3D GetLastError();=0A= +=0A= + if (err =3D=3D ERROR_ACCESS_DENIED)=0A= + return -EACCES;=0A= return -1;=0A= + }=0A= return 0;=0A= }=0A= =0A= ------=_NextPart_000_0007_01C738A9.95BE3E90--