|
Kernel Traffic Latest | Archives | People | Topics |
Wine Latest | Archives | People | Topics |
GNUe Latest | Archives | People | Topics |
| Czech |
| Home | News | RSS Feeds | Mailing Lists | Authors Info | Mirrors | Stalled Traffic |
Table Of Contents
| 1. | 26 Jan 2000 | (2 posts) | Wine is a slashdot nominee |
| 2. | 27 Jan 2000 - 30 Jan 2000 | (5 posts) | DIB sections |
| 3. | 28 Jan 2000 - 29 Jan 2000 | (3 posts) | COM implementation and WineLib |
Introduction
This is the twenty eighth release of the Wine's kernel cousin publication. It's main goal is to distribute widely what's going on around Wine (the Un*x windows emulator).Mailing List Stats For This Week
We looked at 95 posts in 278K.
There were 40 different contributors. 21 posted more than once. 26 posted last week too.
The top posters of the week were:
1. Wine is a slashdot nominee
26 Jan 2000 (2 posts) Archive Link: "Slashdot awards"
People: Alexandre Julliard,
Alexandre Julliard proudly announced that Wine2. DIB sections
27 Jan 2000 - 30 Jan 2000 (5 posts) Archive Link: "DIB problems and the faulthandler"
People: Ulrich Weigand, Alexandre Julliard, , Gav State
Bradley Baetz reported a(nother) bug in DIB sections handling (you can check issue #34 for more on this matter). The following code fragment works under Windows and not in Wine:
hBufferObject = CreateFileMapping(
(HANDLE)0xFFFFFFFF,
NULL,
PAGE_READWRITE,
0,
size,
NULL);
lpvBuffer = MapViewOfFile(hBufferObject, FILE_MAP_ALL_ACCESS, 0, lBufferOffset, size);
...
hdcCompatInput = CreateCompatibleDC(hDCWindow);
hbmInput = CreateDIBSection(hdcCompatInput,
(LPBITMAPINFO)decompressedFormat(),
DIB_RGB_COLORS,
&lpvInput,
hBufferObject,
offset);
As already explained, each DIB in Wine is associated to a X11
Pixmap. Writing directly to the DIB data section "dirties" the DIB (in
fact the data section is protected against write and trying to write
to it triggers a fault handler which does the job), which then knows
that the X11 Pixmap must be updated to reflect the modification to the
DIB data section. In that case the DIB data section is mapped twice in
the process address space (once with MapViewOfFile and the second time
with CreateDIBSection), hence fooling the DIB fault handler.
Ulrich Weigand tried to find some ways to solve this:
3. COM implementation and WineLib
28 Jan 2000 - 29 Jan 2000 (3 posts) Archive Link: "COM implementation problems"
People: , Francois Gouget, Gav State
Michael Kowalski reported some issues with a C++ WineLib program using the MFC. Michael investigated the case and it turned that this is caused by a wrong compatibility (in WineLib case) with MFC. For alignment reasons (and to get MFC compatible COM virtual tables), some dummy entries have to be added at the beginning of the vtable. There's a macro (ICOM_MSVTABLE_COMPAT) in
include/wine/obj_base.h that takes care of that.
However, Gav State pointed out that some internal (built in) vtables
didn't make a correct use of this padding (as, for example, the file
dialog browser).
Francois Gouget, grep:ing faster that the rest of the developers,
found some other areas were this error exists. He shall fix this
really soon.
Sharon And Joy
Kernel Traffic is grateful to be developed on a computer donated by Professor Greg Benson and Professor Allan Cruse in the Department of Computer Science at the University of San Francisco. This is the same department that invented FlashMob Computing. Kernel Traffic is hosted by the generous folks at kernel.org. All pages on this site are copyright their original authors, and distributed under the terms of the GNU General Public License version 2.0. |